android 7 apk 安装程序,Android安装apk文件并适配Android 7.0详解
Android安装apk文件并适配Android 7.0详解
首先在AndroidManifest.xml文件,activity同级节点注册provider:
android:name="android.support.v4.content.FileProvider"
android:authorities="${applicationId}.file_provider"
android:exported="false"
android:grantUriPermissions="true">
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
将apk文件下载到此路径:
String cachePath = (
getExternalFilesDir("upgrade_apk") +
File.separator +
getPackageName() +
".apk");
在res目录xml文件夹下创建名为file_paths的文件:upgrade_apk代表上面保存路径的文件夹名称,可随意更改,相同即可。
最后编写代码,区分不同Android系统版本号,安装apk(注意:【com.apkinstall.demo】要替换自己应用的包名)
/**
* 安装 apk 文件
*
* @param apkFile
*/
public void installApk(File apkFile) {
Intent installApkIntent = new Intent();
installApkIntent.setAction(Intent.ACTION_VIEW);
installApkIntent.addCategory(Intent.CATEGORY_DEFAULT);
installApkIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M) {
installApkIntent.setDataAndType(FileProvider.getUriForFile(getApplicationContext(),"com.apkinstall.demo.file_provider",apkFile),"application/vnd.android.package-archive");
installApkIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
} else {
installApkIntent.setDataAndType(Uri.fromFile(apkFile),"application/vnd.android.package-archive");
}
if (getPackageManager().queryIntentActivities(installApkIntent,0).size() > 0) {
startActivity(installApkIntent);
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
小编个人微信号 jb51ccc
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!
android 7 apk 安装程序,Android安装apk文件并适配Android 7.0详解相关推荐
- android apk安装过程,Android安装apk文件并适配Android 7.0详解
Android安装apk文件并适配Android 7.0详解 首先在AndroidManifest.xml文件,activity同级节点注册provider: android:name="a ...
- 无法安装 计算机缺失,还原安装程序Windows缺失的文件 - Windows Client | Microsoft Docs...
缺少Windows安装程序缓存需要重新构建计算机 10/21/2020 本文内容 本文讨论如何还原安装程序缓存Windows缺失的文件. 适用于: Windows 10 - 所有版本,Windows ...
- 解决安装ubuntu时,出现安装程序向硬盘复制文件时遇到的错误
问题描述: 使用U盘安装ubuntu系统时,出现 安装程序向硬盘复制文件时遇到错误: [Errno 5] Input/output error 此个别错误往往由有缺陷的CD/DVD光盘或CD/DVD驱 ...
- 计算机无法启动安装程序,win7电脑无法安装程序或安装的程序不能运行怎么办...
win7电脑无法安装程序或安装的程序不能运行怎么办?在计算机的操作.运行中,难免遇到应用程序无法安装或者无法正常启动运行的问题,这对我们使用计算机带来了很大的不便,而各种不同的程序不能正常运行,又不可 ...
- 安装程序向硬盘复制文件是遇到错误:[Errno 5] Input/out error ;U盘安装Ubuntu18.04.1遇到错误
U盘安装Ubuntu18.04.1遇到错误: 安装程序向硬盘复制文件是遇到错误:[Errno 5] Input/out error : 这通常是由于CD/DVD盘片或者驱动器有问题,或者硬盘错误造成的 ...
- 用inno setup做的安装程序,安装过程中被360报如下风险
用inno setup做的安装程序,安装过程中被360报如下风险,请问大家有碰到过没有? 我看了下,好像就是最后生成卸载程序时报出来的,在将setup.tmp拷到unins000.exe时,360认为 ...
- office linux 安装程序,如何安装Office2016 64位安装包?只安装3件套!
本篇文章给大家带来的内容是关于如何安装Office2016 64位安装包,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1. 64位安装包制作 Office2016的iso安装包2. ...
- c#打包安装程序默认安装路径设置
c#打包安装程序默认安装路径设置
- 用 .Net Framework 4.0 制作的安装程序来安装 .Net Framework 4.0 编写的程序
文章题目看起来有点绕,解释一下,假如你基于框架写了一个程序,想装到客户机上,但是客户机上可能并没有安装框架,因此你的程序需要预先将框架安装在目标机上,然后再执行一些安装程序的标准功能,如创建快捷方式. ...
最新文章
- JavaScript对象数组示例
- DTrace memory leak 内存泄露
- AliOS Things KV组件的写平衡特性
- CentOS 5 下yum安装 Mono 2.4
- plsql developer 64位版本
- IOS调试移动端弹窗遮罩input框focus和click事件失效
- 宏锦软件2015年的计划
- 通过实验来比较git merge --no-ff 与--ff 和--squash的区别
- oracle 自增加列的实现
- vscode下载提速方法
- 超级搜索术-朱丹-全部笔记整理
- 比较好的自媒体平台推荐,揭秘哪个自媒体平台收入最高
- html a4纸张大小像素,CSS设定A4纸张大小
- 如何将mac中的资料拷贝到U盘,移动硬盘(实用!!!)
- 外显子分析思路总结(Exome Sequencing Analysis review)
- ChatGPT 类大语言模型为什么会带来“神奇”的涌现能力?
- 用Adobe Reader PDF阅读器来验证电子签名有效性
- JS安全防护算法与逆向分析——淘宝登录JS加密算法
- PPTP 理解以及报文的分析
- 学习能力篇:为什么你一定要知道学贵有法和学无定法?
热门文章
- 2019 年,C# 还值得学习吗?
- 阿里平头哥“生娃”!最强 RISC-V 处理器玄铁 910 诞生!
- IoT 打响安防保卫战!
- 任正非:鸿蒙不用于手机;IBM 340 亿美元红帽收购案完成;Firefox 68.0 发布 | 极客头条...
- 5G 是时候商用了?| 程序员硬核评测
- 微信说不!有何不可?
- 水逆的 Google,或许应该向百度取个经?
- Windows Notepad 居然要迎来大更新了!
- 饿了别叫妈,叫阿里“爸爸”!
- 12 个月 vs. 1 个月,你的年终奖是多少?