標籤:android c java tar http get
寫在前面,發這個帖我想,可能很多人用不到,那你就當科普瞭解了,其實每個遊戲,軟體都會擷取你的imei
廢話不說,開始!
在開發手機應用時,開發人員最關心的是開發的手機軟體有多少使用者安裝,並且正在使用。這就需要識別手機的唯一性。目前我瞭解的有兩種方法,擷取手機的imei號(imei號是唯一識別手機的號碼)。擷取android id號(android id 是手機系統的唯一號碼)。
第一種方法:
android擷取手機imei號的方法在在android系統中擷取imei號和其他手機資訊一文中做了詳細的介紹。其中android在 2.0以上的版本中,擷取手機imei號已經不需要相應的讀取手機資訊的許可權了。
< uses-permission android:name="android.permission.READ_PHONE_STATE" />
但是目前1.6以下的版本使用者佔用戶的近50%,如果想要讓1.6以下版本的使用者也可以擷取imei號,那就要添加許可權。
好處是唯一標識手機,缺點是可能需要相應的使用者權限。
String myIMSI = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI);
String myIMEI = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMEI);
第二種方法:
可以擷取android id號,如果一個手機裝置第一次啟動隨即產生的一個數字,如果系統改變,該號可能會改變。
android id號解釋:http://androidappdocs-staging.appspot.com/reference/android /provider/Settings.Secure.html#ANDROID_ID
擷取方法:
String t=android.provider.Settings.System.getString(getContentResolver(), "android_id");
Log.i("huilurry","android_id="+t);
Ms測試結果:
07-13 13:12:49.835: INFO/huilurry(17455): android_id=20014289e714f20c
好處是所有版本都試用,缺點是可能會和其他機子重複或本機改變。via:http://wangjun.easymorse.com /?p=665
3、擷取IMEI是把,telephonypackage的TelephonyManager類的getDeviceId() 方法
獲得IMSI / IMEI(SIM和手機的唯一識別ID)
學習內容: 你將學到如何讀出你手機裡的SIM卡的IMSI (國際移動使用者ID) 和IMEI (國際行動裝置ID). IMSI 與 SIM唯一對應, IMEI 與 裝置唯一對應.
可能應用的場合: 你可能需要 唯一的id 去授權/註冊,或者用於你的Android-Activity的license目的 下面的兩行代碼將會使你獲得SIM卡唯一 ID IMSI 和裝置唯一ID IMEI
描述:
IMSI是一個 唯一的數字, 標識了GSM和UMTS 網路裡的唯一一個使用者. 它 儲存 在手機的SIM卡裡,它會通過手機發送到網路上.
IMEI也是一串唯一的數字, 標識了 GSM 和 UMTS網路裡的唯一一個手機. 它通常被列印在手機裡電池下面的那一面,撥 *#06# 也能看到它.
代碼: 這裡是你在Android裡讀出 唯一的 IMSI-ID / IMEI-ID 的方法。
Java:
String myIMSI = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI);
String myIMEI = android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMEI);