Android8.0如何解决不能自动安装APK的问题
                                            这篇文章主要介绍Android 8.0如何解决不能自动安装APK的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
创新互联建站是一家专业提供张家川回族自治企业网站建设,专注与网站设计、成都网站设计、H5场景定制、小程序制作等业务。10年已为张家川回族自治众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
Android8.0之前
未知应用安装权限默认开启,如下图所示

8.0以下手机未知应用安装权限.png
Android8.0之后
未知应用安装权限默认关闭,且权限入口隐藏。
如何开启未知应用安装权限的入口,并设置允许安装?
在清单文件中添加权限
判断当前是否为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()
    }
   }
  }
 }以上是“Android 8.0如何解决不能自动安装APK的问题”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
网站标题:Android8.0如何解决不能自动安装APK的问题
浏览地址:http://www.cqwzjz.cn/article/ggcgei.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 