2010-09-09 68 views
2

有沒有被賦予到Android handests一個唯一的ID可以通過SDK?唯一標識Android手機

我想提供一個Web服務,只能爲每個用戶進行每一次資源操作。也許有不同的方式去做這件事。有任何想法嗎?

回答

6

這裏描述使用手機IMEI:http://www.androidsoftwaredeveloper.com/2009/04/02/how-to-get-the-phone-imei/

String imei = TelephonyManager.getDefault().getDeviceId(); 
if (TextUtils.isEmpty(imei)) { 
    return ""; 
} 

您需要讀取手機狀態的權限來訪問這些數據。所以你必須添加

<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 

到你的清單文件。

+0

太好了!正是我在找什麼。有時候,搜索條件會讓我感到... – 2010-09-09 17:48:51

+2

請注意,安裝期間將向用戶顯示此權限,並且相關隱私的用戶可能會降低您的應用程序對請求訪問imei的評價。 imei是一種通常不應輕易訪問並傳輸到服務器的類型。也許使用imei或其他東西的散列,而不是將它保存在其他地方。看看這個博客帖子大約隱私和數據等:http://android-developers.blogspot.com/2010/08/best-practices-for-handling-android.html – Janusz 2010-09-09 18:14:22

+0

酷。謝謝!!! – 2010-09-09 18:25:05

2

使用IMEI識別手機。這是最可靠的來源之一。

TelephonyManager.getDefault().getDeviceId(); 
+0

這會返回CDMA上的MEID嗎? – 2010-09-09 17:59:47

+1

我還沒有嘗試過在CDMA,只是嘗試一下。可能是MEID。 – 2010-09-09 18:04:23