我想知道是否可以通过编程来触发安装存储卡中的apk文件?
我想知道是否可以通过编程来触发安装存储卡中的apk文件?
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");
startActivity(intent);
(由anddev.org提供)
startActivity()
。我建议你逐步实现,首先在一个手动放置在 SD 卡上的 APK 上使用 startActivity()
(例如,adb push、DDMS 文件管理器、从开发机器挂载/拖动/卸载)。一旦它按照你想要的方式工作,再将下载机制混合进去。 - CommonsWare如果有人正在寻找这些信息……
如果您想要安装一个apk,同时又以编程方式下载并存储在私人“文件”文件夹中(即“/data/data/com.yourapp.name/files”),则需要通过首先使用getFileStreamPath获取完整路径的URI,如下:
File fullPath = getFileStreamPath("name_of_downloaded_app.apk");
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(fullPath), "application/vnd.android.package-archive");
startActivity(intent);
看看这个能不能帮到你:通过Intent安装Apk。不过我不确定这是否是正确的方法。