下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】Android8.0版本更新无法自动安装怎么办
这篇文章给大家分享的是有关Android8.0版本更新无法自动安装怎么办的内容。在下觉得挺实用的,因此分享给大家做个参考,一起跟随在下过来看看吧。前言前几天APP上线了个新版本,有部分用户反应在下载完安装包以后点击安装无反应。查了下这部分用户手机的系统的版本都是8.0+版本。因为太久没关注新版本特性,所以导致了这个问题的发生。Android8.0(AndroidO)为了针对一些流氓软件引导用户安装其他无关应用。在应用权限设置的“特殊访问权限”中,加入了“安装其他应用”的设置。实现1.清单文件权限声明<uses-permissionandroid:name="android.permission.REQUEST_INSTALL_PACKAGES"/>2.点击安装判断是否有权限
if
(Build.VERSION.SDK_INT
>=
26)
{
//来判断应用是否有权限安装apk
boolean
installAllowed=
getPackageManager().canRequestPackageInstalls();
//有权限
if
(installAllowed)
{
//安装apk
install(apkPath);
}
else
{
//无权限
申请权限
ActivityCompat.requestPermissions(this,
new
String[]{Manifest.permission.REQUEST_INSTALL_PACKAGES},
INSTALL_APK_REQUESTCODE);
}
}
else
{
install(apkPath);
}权限申请回调@Override
public
void
onRequestPermissionsResult(int
requestCode,
@NonNull
String[]
permissions,
@NonNull
int[]
grantResults)
{
super.onRequestPermissionsResult(requestCode,
permissions,
grantResults);
switch
(requestCode)
{
case
INSTALL_APK_REQUESTCODE:
//有注册权限且用户允许安装
if
(grantResults.length
>
0
&&
grantResults[0]
==
PackageManager.PERMISSION_GRANTED)
{
install(apkPath);
}
else
{
//将用户引导至安装未知应用界面。
Intent
intent
=
new
Intent(Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES);
startActivityForResult(intent,
GET_UNKNOWN_APP_SOURCES);
}
break;
}
}安装APKprivate
void
install(String
apkPath)
{
//7.0以上通过FileProvider
if
(Environment.SYSTEM_VERSION_CODE
>=
24)
{
Uri
uri
=
FileProvider.getUriForFile(context,
Environment.FILE_PROVIDER_AUTHORITY,
new
File(apkPath));
Intent
intent
=
new
Intent(Intent.ACTION_VIEW).setDataAndType(uri,
"application/vnd.android.package-archive");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
context.startActivity(intent);
}
else
{
Intent
intent
=
new
Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(Uri.parse("file://"
+
apkPath),
"application/vnd.android.package-archive");
context.startActivity(intent);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024专利知识产权合同
- 2024五星级酒店食品供应与采购劳务合同
- 2024外架搭设合同
- 2024软件项目委托开发合同
- 2024年度旅游景点开发合作协议
- 2024年度安置房买卖合同中的违约责任
- 2024年度新能源项目开发建设合同
- 文书模板-充电桩股份转让合同
- 2024年度货物买卖合同商品描述与支付方式详解
- 2024年幼儿园教育联盟协议
- 国开电大 可编程控制器应用实训 形考任务6实训报告
- GB/T 34120-2023电化学储能系统储能变流器技术要求
- 跨国企业中方外派人员的跨文化适应
- 《道路交叉设计》课件
- 《活着》读后感-课件
- 体检报告汇总分析中风险的防范
- 村里建群管理制度
- 【城市轨道交通运营安全管理研究5300字】
- 2024年中核汇能有限公司招聘笔试参考题库含答案解析
- 上海市2024届高三7月模拟预测历史试题(等级考)(解析版)
- 肺炎护理查房课件
评论
0/150
提交评论