国产探花免费观看_亚洲丰满少妇自慰呻吟_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開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 陕西省| 库尔勒市| 东山县| 永康市| 奈曼旗| 涿鹿县| 崇左市| 徐汇区| 孟州市| 呼图壁县| 三穗县| 大洼县| 水富县| 泾川县| 基隆市| 安西县| 西昌市| 桂阳县| 长兴县| 麻阳| 龙陵县| 大城县| 会同县| 芒康县| 赞皇县| 宜春市| 青海省| 石河子市| 永州市| 保康县| 巴中市| 津南区| 周宁县| 越西县| 平度市| 阜新| 鹤岗市| 高雄市| 莆田市| 布拖县| 自治县|