我正在開發Android應用程序(很快的iPhone應用程序)。我需要一種方法來從服務器端識別手機。我想我可以寫在設備上永久存儲的祕密(某種形式的加密字符串)首次應用程序運行,並使用這下它說話的後端服務器的時間來識別手機。這是怎麼做到的?有沒有更好的辦法?識別手機無需用戶無需創建賬號
澄清:這個問題應該說,我要找出應用程序的用戶。我對跟蹤實際設備不感興趣。
我正在開發Android應用程序(很快的iPhone應用程序)。我需要一種方法來從服務器端識別手機。我想我可以寫在設備上永久存儲的祕密(某種形式的加密字符串)首次應用程序運行,並使用這下它說話的後端服務器的時間來識別手機。這是怎麼做到的?有沒有更好的辦法?識別手機無需用戶無需創建賬號
澄清:這個問題應該說,我要找出應用程序的用戶。我對跟蹤實際設備不感興趣。
一樣多,我明白你的問題,你要確定從哪個設備請求即將到來,而不是構建或手機的固件。在這種情況下,你可以從他們的IMEI號碼識別它們,用下面的代碼 -
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
telephonyManager.getDeviceId();
,添加以下權限到您的清單文件:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
ANDROID_ID。博客特別關於這個問題。 http://android-developers.blogspot.in/2011/03/identifying-app-installations.html – Gogu
引自通「跟蹤裝置,例如,你可以使用UUID作爲標識,並簡單地創建一個新的第一次在安裝後運行一個應用程序。「謝謝@Gogu,這確實很有用。 – Jepper
好吧,我沒有正確地閱讀你的問題。在你的情況下,UUID比ANDROID_ID更合適。如果您使用ACRA進行崩潰報告,則acra有一個您可以用於您的目的的Installation.id。 – Gogu