写入另一个应用程序的内部存储器

时间:2012-11-27 07:11:06

标签: android

我有2个具有不同包名称的应用程序。例如。 App1和App2。

App1需要将一些文件写入App2的内部存储器,以便将其上传到后端。

我在App1中使用了以下内容:

filePath = getPackageManager().getPackageInfo("app2.package.name", 0).applicationInfo.dataDir;

我可以获得正确的路径,但无法写入。我检查了logcat,它显示“权限被拒绝”。

我错过了什么吗?还有什么需要做的?

先谢谢

2 个答案:

答案 0 :(得分:0)

感谢您的所有建议。我在android清单中使用了android:sharedUserId,现在可以在应用程序的内存中写入。

由于我的唯一目的是编写文本文件(不涉及共享等),我发现这是最容易实现的。

答案 1 :(得分:-1)

您无法直接访问其他应用程序内部存储器。只有在设备上具有超级用户权限才能这样做。

但为什么你的应用会写入另一个应用程序的内存?如果您必须在2个应用程序之间进行一些通信,还有其他方法可以执行此操作。即使用服务,内容提供商或广播意图并通过您的其他应用程序接收它。