2018-07-26 14:40:20 2439瀏覽
今天扣丁學(xué)堂Android培訓(xùn)主要給大家介紹了關(guān)于Android8.0不能自動(dòng)安裝APK問(wèn)題的解決方法(完美適配),這里的自動(dòng)安裝是指下載完成后,自動(dòng)彈出安裝界面,而不是靜默安裝APK,下面我們一起來(lái)看一下吧。
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { boolean hasInstallPermission = isHasInstallPermissionWithO(context); if (!hasInstallPermission) { startInstallPermissionSettingActivity(context); return; } }如果為8.0以上系統(tǒng),則判斷是否有未知應(yīng)用安裝權(quán)限
@RequiresApi (api = Build.VERSION_CODES.O) private boolean isHasInstallPermissionWithO(Context context){ if (context == null){ return false; } return context.getPackageManager().canRequestPackageInstalls(); }
/** * 開(kāi)啟設(shè)置安裝未知來(lái)源應(yīng)用權(quán)限界面 * @param context */ @RequiresApi (api = Build.VERSION_CODES.O) private void startInstallPermissionSettingActivity(Context context) { if (context == null){ return; } Intent intent = new Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES); ((Activity)context).startActivityForResult(intent,REQUEST_CODE_APP_INSTALL); }
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if (resultCode== Activity.RESULT_OK ){ when(requestCode){ REQUEST_CODE_APP_INSTALL -> { onSettingCheckUpdate() } } } }
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)有所幫助,感謝大家對(duì)扣丁學(xué)堂的支持。
【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】
查看更多關(guān)于“Android開(kāi)發(fā)技術(shù)”的相關(guān)資訊>>