更改目录权限

3
我需要获取我的应用程序的lib目录(即/data/data/com.my.app/lib/)的写入权限,并在其中存储文件,我需要从我的应用程序中执行此操作。这是否可能?如果可能,如何实现?
注:当我提到“我的应用程序”时,指的是使用Java编写的同一应用程序。 /data/data/com.my.app/lib/是该应用程序的lib目录路径。
更新:很遗憾,像LeffelMania所说,我没有找到任何方便的方法来实现它。幸运的是,我们以更好的方式解决了这个问题 - 我们说服库的开发人员使其更具动态性 :)。再次感谢LeffelMania。

你在写什么?将其存储为字节数组到数据库中... - Anthony Graglia
我正在编写一个SO文件,稍后将其加载到我的程序中。我可以将它存储在其他目录中,例如/data/data/com.my.app//data/data/com.my.app/files/,但我需要将其特别保存在bin目录中。 - MByD
你需要告诉我们为什么它必须在bin目录中,因为这没有逻辑上的解释。只有你的应用程序可执行二进制文件应该在bin目录中。 - LeffelMania
我认为这完全不相关,但假设我无法控制库并且它检查是否位于bin或另一个文件夹中。不过这没关系,可以看一下编辑后的问题。 - MByD
1个回答

4

无法直接写入另一个应用程序的文件空间。您的应用程序可以通过授权访问自己的空间和外部存储器(SD卡)进行写入。

但是,根据您具体要做什么,我可以想象出几种方法。

1)从一个应用程序将文件写入SD卡。当打开另一个应用程序时,检查文件是否存在并从中读取。确保将其写入您自己的专有文件夹-不要占用用户的存储空间。如果适用于您的情况,在读取文件后,从另一个应用程序中删除文件和文件夹。

2)在接收方应用程序中注册自定义BroadcastReceiver,并将您需要传输的数据放在Intent中,该Intent将从另一个应用程序发送。您应该使用自己的操作字符串,以便系统中没有其他应用程序尝试使用您的Broadcast。


谢谢,但这不是另一个应用程序,而是我的应用程序。我可以写入/data/data/com.my.app/下的其他目录。 - MByD

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接