android 唯一设备号的一种方法

方法一

通过获取这三个参数:IMEI、AndroidId、macAddress ,拼接,然后通过md5编码,可以保证唯一性。
存在问题:

  1. 可能需要申请权限:
    获取 IMEI 需要加入权限 android.permission.READ_PHONE_STATE
    获取 macAddress 需要加入权限 android.permission.ACCESS_WIFI_STATE
    如果权限申请失败,就获取不到对应的数据了。
  2. 如果用户先不给权限,后面又给权限,可能出现同一个手机,出现不同的设备号。

方法二

通过UUID 生成一段唯一的字符串,然后把字符串保存到用户的手机中。
分为两种情况:

  • 如果用户有sd卡,就通过文件的形式保存在sd卡中。
  • 如果用户没有sd卡,就保存到SP中去。
    存在问题:
  1. 存在sd卡的情况下,如果用户删除我们保存唯一码的文件,那么我们就拿不到唯一码了。(每次需要用这个唯一码时,需要判断文件是否存在)
    2.如果唯一码是保存到sp中的,那么用户一旦卸载app,将会重新生成唯一码。

你可能感兴趣的:(android 唯一设备号的一种方法)