国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android 8.0不能自動安裝APK問題的解決方法(完美適配)

2019-10-21 21:45:33
字體:
來源:轉載
供稿:網友

Android8.0之前

未知應用安裝權限默認開啟,如下圖所示

Android,安裝,APK
8.0以下手機未知應用安裝權限.png

Android8.0之后

未知應用安裝權限默認關閉,且權限入口隱藏。

如何開啟未知應用安裝權限的入口,并設置允許安裝?

在清單文件中添加權限

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>

判斷當前是否為8.0以上系統(在這之前也可以對7.0系統進行判斷,這里代碼沒有貼出)

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {  boolean hasInstallPermission = isHasInstallPermissionWithO(context);  if (!hasInstallPermission) {   startInstallPermissionSettingActivity(context);     return;  }}

如果為8.0以上系統,則判斷是否有 未知應用安裝權限

@RequiresApi (api = Build.VERSION_CODES.O)private boolean isHasInstallPermissionWithO(Context context){ if (context == null){  return false; } return context.getPackageManager().canRequestPackageInstalls();}

如果沒有 未知應用安裝權限 ,則需要手動開啟

/** * 開啟設置安裝未知來源應用權限界面 * @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);}

Activity回調(這一步根據需求來確定)

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()    }   }  } }

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 五指山市| 洱源县| 太康县| 铅山县| 平谷区| 延寿县| 石阡县| 周宁县| 九江市| 丹寨县| 合作市| 迁西县| 阜平县| 闸北区| 武夷山市| 德州市| 漳州市| 磴口县| 西贡区| 邛崃市| 江安县| 佛山市| 红安县| 石城县| 吴堡县| 辉南县| 永寿县| 临漳县| 安徽省| 稻城县| 西贡区| 尼玛县| 嘉善县| 科技| 蓝田县| 任丘市| 龙海市| 洞口县| 万全县| 清河县| 邵武市|