[英]Opening Files from a String Path with Android NDK
我最近浏览了Android文件访问文档,但是似乎无法弄清楚如何实际打开一个文件,该文件以包含要打开的文件路径的字符串形式给出。
我(最终)想要完成的工作是这样的:
getPath()
)并将此字符串传递给本机C ++代码。 根据到目前为止的发现,似乎不再可能以这种方式打开文件(至少从SDK版本26开始):
permission denied
。 getPath()
接收到的路径本身会触发No such file or directory
错误。 一种解决方法是使用ContentResolver
在Java端打开文件,然后将文件描述符传递到本机端。 这行得通,但是有问题:文件可以包含对其他要打开的文件(“包含文件”)的引用,从而限制了使用范围。
为了清楚起见,这些文件位于Android系统的“ USB”分区本地,与应用程序本身无关。 不能作为APK的资源/资产或其他类似问题所需的资源。
总而言之,我想问题是这样的:给定应用程序Java端的路径,是否可以打开文件以及它所引用的其他文件? 是否有执行此操作的要求,例如为文件夹或类似内容请求正确的权限?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.