Android-几行代码通知系统自动安装apk

前言:

在Android的app中,经常会收到应用程序有新版本发布,询问是否更新的对话框,点击更新之后,安装成功,之后会显示如下图所示的页面,询问是否打开这个新安装的apk.这个是怎么做到的呢?




实现步骤:

在这之前首先要说一个关于自动更新的流程:

1.发现新版本,弹出对话框通知更新

2.点击更新,下载新版本的.apk文件到本地

3.安装这个apk

这里我们主要说的就是这个第三步,通知Android自动自动安转apk,代码非常简单:

        //apk文件的本地路径
        File apkfile = new File(apkFilePath);
        //会根据用户的数据类型打开android系统相应的Activity。
        Intent intent = new Intent(Intent.ACTION_VIEW);
        //设置intent的数据类型是应用程序application
        intent.setDataAndType(Uri.parse("file://" + apkfile.toString()), "application/vnd.android.package-archive");
        //为这个新apk开启一个新的activity栈
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        //开始安装
        startActivity(intent);
        //关闭旧版本的应用程序的进程
        android.os.Process.killProcess(android.os.Process.myPid());

这里有两个需要注意的地方

1.为新版本的应用程序创建一个新的activity栈

2.关闭旧版本应用程序的进程

没有这两句,安装完新软件,会出现闪退效果,需要手动找到图标重启才能进入新安装的软件.



  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值