前言:

在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.关闭旧版本应用程序的进程

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



更多相关文章

  1. 关于android安装sdk时找不到jdk的解决办法
  2. 为什么Android将掀起一场手机领域的狂风(Why Android(安卓)will
  3. 【Android适配问题集锦-rom类】Android(安卓)Recents App应用无
  4. android调用摄像头拍照,并且用imageView显示出来
  5. android在更新ADT以后报java.lang.NoClassDefFound的解决办法
  6. Android应用程序主要组件知识小结
  7. IIS 或者 Tomcat 处理android手机自带浏览器无法识别apk文件
  8. 实践中探索Android智能手机系统------APK程序安装
  9. android版PDA通过USB与.net应用程序通讯,实现离线版android应用同

随机推荐

  1. Android(安卓)颜色渲染(二) 颜色区域划分
  2. Android软键盘的隐藏显示
  3. android应用去掉title bar
  4. Android调用系统设置,Android调用系统设置
  5. 一道面试题引发的对android中context的研
  6. 模拟来电的实现
  7. app开发计划
  8. Android-----RelativeLayout属性
  9. 第21天android:《android从零开始》视频(10
  10. Android 调用有道词典查词