如何在android中启动股票安装程序应用程序

时间:2012-05-02 03:04:31

标签: android android-intent installer protocols

我曾经有过这个问题,但我找到了解决方案,所以我决定将其发布在这里以防其他人需要它。

如何启动本机安装程序应用程序以安装apk?

许多帖子都有如下解决方案:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(path), "application/vnd.android.package-archive");
context.startActivity(intent);

这很好,除了一个微小但非常重要的细节:

“path”字符串必须以 file:// 开头,否则您将获得例外

等异常
Unable to find an activity to handle the intent .....

因此,请确保路径以 file://

开头

干杯。

1 个答案:

答案 0 :(得分:1)

实际上,您可以简单地使用parse(...)类的fromFile(...)方法(Uri将自动拥有形式的文件),而不是使用Uri方法:/ /“)。

因此:

final File file = new File(path);
final Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
context.startActivity(intent);