AndroidQ適配之IMEI替換為Android_id的示例分析

這篇文章給大家分享的是有關Android Q適配之IMEI替換為Android_id的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名申請、虛擬空間、營銷軟件、網站建設、圖木舒克網站維護、網站推廣。

前置工作:

項目配置升到對應的29版本

compileSdkVersion: 29,
buildToolsVersion: ‘29.0.0',
minSdkVersion : 19,
targetSdkVersion : 29,
javaVersion : JavaVersion.VERSION_1_8

Android Q適配之IMEI替換為Android_id的示例分析

升級到Android Q后的權限提示界面

老版本獲取IMEI的方法:

public static String getIMEI(Context context) {
    String deviceId = null;
    try {
      TelephonyManager tm = (TelephonyManager) context
          .getSystemService(Context.TELEPHONY_SERVICE);
      deviceId = tm.getDeviceId();
      if (deviceId == null || "".equals(deviceId)) {
        return getLocalMacAddress(context);
      }
    } catch (Exception e) {
      e.printStackTrace();
      if (deviceId == null || "".equals(deviceId)) {
        return getLocalMacAddress(context);//獲取Mac地址,在Android 9 P版本中,地址會隨機變化,不可用作唯一標識,可去掉。
      }
    }

    return deviceId;
  }

Android Q獲取IMEI方法

public static String getIMEI(Context context) {
    String deviceId = null;
    try {
      TelephonyManager tm = (TelephonyManager) context
          .getSystemService(Context.TELEPHONY_SERVICE);
      if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
        deviceId = Settings.System.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);
      } else {
        // request old storage permission
        if (ActivityCompat.checkSelfPermission(context, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) {
          // TODO: Consider calling
          //  ActivityCompat#requestPermissions
          // here to request the missing permissions, and then overriding
          //  public void onRequestPermissionsResult(int requestCode, String[] permissions,
          //                     int[] grantResults)
          // to handle the case where the user grants the permission. See the documentation
          // for ActivityCompat#requestPermissions for more details.
          return null;
        }
        deviceId = tm.getDeviceId();
      }
      if (deviceId == null || "".equals(deviceId)) {
        return getLocalMacAddress(context);
      }
    } catch (Exception e) {
      e.printStackTrace();
      if (deviceId == null || "".equals(deviceId)) {
        return getLocalMacAddress(context);
      }
    }

    return deviceId;
  }

谷歌官方有聲明:手機恢復出廠設置,Android ID會重置。

如果用戶拒絕權限,也還是會獲取不到設備標識。

感謝各位的閱讀!關于“Android Q適配之IMEI替換為Android_id的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

當前名稱:AndroidQ適配之IMEI替換為Android_id的示例分析
文章轉載:http://www.kartarina.com/article24/gspgce.html

成都網站建設公司_創新互聯,為您提供響應式網站微信公眾號App開發面包屑導航網站設計公司網站建設

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站托管運營
主站蜘蛛池模板: 无码的免费不卡毛片视频| 国产精品无码一区二区三区不卡| 夫妻免费无码V看片| 国产强伦姧在线观看无码| 无码午夜成人1000部免费视频| 无码人妻丰满熟妇区五十路| 中文字幕无码一区二区三区本日| 一本大道无码av天堂| 亚洲av无码成h人动漫无遮挡| 日韩毛片无码永久免费看| 中文无码字慕在线观看| 国产成人无码免费网站| 国语成本人片免费av无码| 久久久久亚洲AV片无码下载蜜桃| 久久久91人妻无码精品蜜桃HD| 国产成人无码AV在线播放无广告| 国99精品无码一区二区三区 | 免费无遮挡无码永久视频| 亚洲午夜无码AV毛片久久| 亚洲精品无码久久久久久| 无码精品国产VA在线观看| 亚洲中文字幕无码日韩| 狠狠噜天天噜日日噜无码| 无码高潮少妇毛多水多水免费| 亚洲AV无码无限在线观看不卡| 国产无遮挡无码视频免费软件| 久久久人妻精品无码一区| 国产成人无码av在线播放不卡 | 久久久久无码精品国产h动漫| 无码精品人妻一区二区三区人妻斩 | 日本无码一区二区三区白峰美| 亚洲国产精品无码久久SM| 亚洲中文字幕无码永久在线| 国产亚洲精久久久久久无码77777| 国产色无码精品视频国产| 国产精品无码免费播放| 无码精品人妻一区二区三区免费| 无码人妻一区二区三区在线水卜樱| 丰满亚洲大尺度无码无码专线| 免费无码看av的网站| 亚洲精品一级无码鲁丝片|