在某些項目中,須要記錄用戶的某些設置,或行爲,並上傳到服務器,若是無需用戶登陸註冊,就可記錄獨立這些內容,就須要用到設備的某些獨立的序列。(如下部分android須要API8以以上,android2.3測試成功) android
首先,先想一想能夠從哪些方面能夠入手, 服務器
1手機號碼,2手機MIUI號,3設備的序列號,4wifi的mac碼,5最後一種辦法就只能使用UUID dom
在獲取某些手機信息時須要某些權限的 測試
1首先,添加權限: ui
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> this
有了權限以後才能使用 TelephonyManager ,否則會報沒有權限的錯誤。 spa
TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService( Context.TELEPHONY_SERVICE); get
//獲取本機MIEI號碼(僅手機存在)
String deviceId = telephonyManager.getDeviceId();
//獲取設備序列號
String sn = telephonyManager.getSimSerialNumber();
//獲取本機電話號碼
String phonenumber = telephonyManager.getLine1Number();
io
獲取wifi的mac碼須要添加劑權限 登錄
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
//獲取wifi設備的mac碼
String mac = info.getMacAddress();
獲取本機號碼:
//獲取本機型號
String phonetype = android.os.Build.MODEL;
隨機數:
//隨機數
String uuid = UUID.randomUUID();