自动安装APK
需求:当我们的应用程序有新的版本的时候,用户下载更新之后,怎么让我们的软件包自动安装呢 ?
思路:其实这个安装APK也是一个应用程序,这个应用程序是 系统自带.
我们只需要使用意图对象,跳转到那个应用程序就可以的了.
//APK下载之后存储的路径
File file = new File(Environment.getExternalStorageDirectory(),
System.currentTimeMillis() + ".apk");
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.addCategory("android.intent.category.DEFAULT");
//Uri uri =
//Uri.fromFile(file);可以代替
//Uri.parse("file://"+file.getAbsolutePath())
intent.setDataAndType(Uri.parse("file://" + file.getAbsolutePath()),
"application/vnd.android.package-archive");
// 把安装程序的界面独自放在一个栈中,这样销毁的时候,就不会销毁我们的界面
//这样我们下载APK之后,系统安装完之后,用户就可以看到我们的应用程序的界面了.
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
这张图片是系统安装程序的清单文件,我们意图跳转的值,也是从这里查出来的了