我的应用程序的一部分,我创建了一个Android服务,它封装了一个Native代码库。 Android服务正在自己的进程中运行。 我需要Android服务中的Native代码来访问和写入安装文件夹(/ data / data / package文件夹)中的私有数据。 那可能吗? 看起来本机代码出现了写访问错误。
在同一行中,此服务是否可以访问“/ mnt / sdcard / Android / data /?”中的SD卡目录 它还看起来本机代码会出现访问错误。
任何确认都有帮助
感谢 埃里克
答案 0 :(得分:2)
对于这两个问题:是的。
您的服务是您的应用程序的一部分,与活动和应用程序的其他部分相同。它可以访问应用程序的私人文件夹,正确确定:
getPackageManager().getPackageInfo("com.example.app", 0).applicationInfo.dataDir;
假设您在清单中有权限,它也可以写入SD卡:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
您可能错误地认为您的服务运行的程序与其他应用程序不同。它仍然是相同的过程,本机代码没有区别。