我正在使用NDK r10d移植C ++ myToll
Linux应用程序以在Android上运行。 (请注意,这不是具有apk
的Android应用程序,而是从shell运行的实用程序工具。)这是一个命令行界面,没有GUI,并且正在构建为NDK的独立应用程序。 / p>
在诸如Centos 5之类的Linux上,该工具读取和写入以下标准目录位置:
/var/run/myTool/ (read/write)
/var/log/myTool/ (read/write)
/etc/myTool/ (read only)
/tmp/ (read-write)
myTool
安装在/system/xbin/myTool
中,可以作为shell中的实用程序在root用户手机上运行,但无法在运行时访问这些相同的位置,即使以{{1}运行}。
在Android系统上使用的相应位置是什么root
将具有足够的写入权限,并且在Android上可以找到这些文件常见的位置?是否有myTool
可以创建的位置,root
可以在运行时使用它们而不是myTool
?
答案 0 :(得分:0)
参考ferzco提供的Android stackexchange answer,我选择了以下适用于我的三星Galaxy S4的解决方案:
/var/run/myTool/ => /data/log/myTool/run/
/var/log/myTool/ => /data/log/myTool/log/
/etc/myTool/ => /etc/myTool/
/tmp/ => /data/local/tmp/myTool/
我使用/data/log/myTool
作为两个目录的基础,/data/local/tmp
作为第三个目录的基础,因为它们是我能找到的唯一一个在不myTool
时提供写入权限的人su
1}}(编辑)到root
。我需要root
在安装期间设置myTool
子目录,但是一旦myTool
目录被创建而chmod 777 myTool
被设置为root
,用户就不再需要要root
写入这些子目录。对于第四个/etc/myTool
,因为myTool
只需要在运行时从/etc
读取信息,我将其保留在现有的/etc
目录中,因为它是可读的(尽管不可写) )用户创建后,我可以根据需要将其配置为root
。