真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android高版本API方法如何在低版本系統(tǒng)上做兼容性處理淺析

前言

站在用戶的角度思考問題,與客戶深入溝通,找到溫縣網(wǎng)站設(shè)計(jì)與溫縣網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋溫縣地區(qū)。

在最近的開發(fā)中需要獲取到SIM卡的網(wǎng)絡(luò)狀態(tài),在源碼中看到一個(gè)方法:

TelephonyManager tm =(TelephonyManager)context.getSystemService(TELEPHONY_SERVICE);
state =tm.getDataNetworkType();

但是報(bào)錯(cuò)了Call requires API level 24 (current min is 21): android.telephony.TelephonyManager#getDataNetworkType

Android 版本更替,新的版本帶來新的特性,新的方法。

新的方法帶來許多便利,但無法在低版本系統(tǒng)上運(yùn)行,如果兼容性處理不恰當(dāng),APP在低版本系統(tǒng)上,運(yùn)行時(shí)將會(huì)crash。

處理方法

1.添加@RequiresApi(api = Build.VERSION_CODES.N)

2.添加@TargetApi(Build.VERSION_CODES.N)

3.添加@SuppressLint("NewApi")

4.添加運(yùn)行時(shí)SDK版本判斷

  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
   tm.getDataNetworkType();
  }

5.在低版本通過其他方法實(shí)現(xiàn)該功能

總結(jié)

第一、第二、第三種方法只是能編譯通過,到了低于API24的系統(tǒng)運(yùn)行,將會(huì)引發(fā) java.lang.NoSuchMethodError

正確的做法是添加運(yùn)行時(shí)SDK版本判斷,判斷為低版本時(shí)添加其他方法實(shí)現(xiàn)該功能

好了,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)創(chuàng)新互聯(lián)的支持。


當(dāng)前題目:Android高版本API方法如何在低版本系統(tǒng)上做兼容性處理淺析
瀏覽路徑:http://weahome.cn/article/jjsjgs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部