android app升级(下载)完毕后自动弹出安装界面的实现
2015-10-28 14:17
441 查看
之前写过一个Demo,是更新app的功能,特点是通知栏实时更新下载进度,下载完成后通知栏提示下载完成,下拉通知栏,点击安装。具体的文章内容详见http://blog.csdn.net/jdfkldjlkjdl/article/details/43232319
那么,怎样实现app升级完毕后自动弹出安装界面呢,此文探讨的就是这个功能
直接上代码:
我是在UpdateService类中加入这段代码的,报错如下:
Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
原因是:
Context中有一个startActivity方法,Activity继承自Context,重载了startActivity方法。如果使用 Activity的startActivity方法,不会有任何限制,而如果使用Context的startActivity方法的话,就需要开启一个新的task,遇到上面那个异常的,都是因为使用了Context的startActivity方法。解决办法是,加一个flag。intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
修改后的代码为:
那么,怎样实现app升级完毕后自动弹出安装界面呢,此文探讨的就是这个功能
直接上代码:
String fileName = "/sdcard/tmp.apk"; Intent i = new Intent(); i.setAction(Intent.ACTION_VIEW); i.setDataAndType(Uri.fromFile(new File(fileName) ), "application/vnd.android.package-archive"); startActivity(i);
我是在UpdateService类中加入这段代码的,报错如下:
Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
原因是:
Context中有一个startActivity方法,Activity继承自Context,重载了startActivity方法。如果使用 Activity的startActivity方法,不会有任何限制,而如果使用Context的startActivity方法的话,就需要开启一个新的task,遇到上面那个异常的,都是因为使用了Context的startActivity方法。解决办法是,加一个flag。intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
修改后的代码为:
String fileName = "/sdcard/tmp.apk"; Intent i = new Intent(); i.setAction(Intent.ACTION_VIEW); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); i.setDataAndType(Uri.fromFile(new File(fileName) ), "application/vnd.android.package-archive"); startActivity(i);
相关文章推荐
- Android studio 工程配置相关问题-.grade
- 2015/10/28 ios ffmpeg移植
- Android 5.0动态设计细节
- iOS指纹识别
- android EditText不自动弹出软键盘
- Android学习系列(1)--为App签名(为apk签名)
- iOS 8创建交互式通知
- Play Framework 完整实现一个APP(四)
- 新 Android程序签名详解、打包、发布到Google play步骤
- Android应用程序签名 debug签名
- Android中对原始图片的缩放
- AndroidL 操作延时的方法
- 教你做IOS推送 包会!
- Android按钮事件的几种写法
- ios 判断应该用pop返回还是dismis返回
- swift学习笔记(1)--基本数据类型
- 上传APP至AppStore时打包出现U option must have a non-empty value
- ios9 3D Touch 实现
- android 数据解析 JSON 开发详解+视频
- 说说Unity3D里的各种坐标系