通过另一个应用程序安装Android应用程序

时间:2013-06-05 20:08:44

标签: java android eclipse android-intent

我需要创建一个应用程序来安装我创建的一些apk(名称是myapp.apk)文件。 (我单独检查了myapp.apk并且工作正常)

我在raw文件夹中创建了一个文件夹res,并将myapp.apk文件放在那里。 我在应用程序中添加了以下代码:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File("R.raw.myapp")), "application/vnd.android.package-archive");

但是我在模拟器上遇到了一个解析错误(eclipse android模拟器)。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

首先,R.raw.myapp不是文件。它是原始资源的整数标识符。

其次,您无法从资源(或资产或ContentProvider)安装APK。它必须是文件系统上的文件,可由其他进程读取。

因此,使用getResources().openRawResource()在您的APK上获取InputStream,将其写入外部存储空间,然后在Intent中使用外部存储空间中的文件。