1

我的项目在 Android 设备上运行 C++ 测试用例。生成一个可执行文件,随之,几个共享对象文件也被复制到设备上,然后运行可执行文件。到目前为止,所有这些数据都被复制到/data/local/tmp文件夹中。运行测试用例后,/data/local/tmp使用 adb shell 命令删除其中的内容。使用 Pixel 2 设备,我可以将 exe 和共享对象文件复制到tmp文件夹中,但一旦测试用例完成,就无法删除它们。我尝试使用/data/local/temp文件夹,但无法将文件推送到该文件夹​​。尝试使用/sdcard,但它不允许执行 exe 文件。我不知道应该使用哪个特定目录在 Pixel 2 设备上运行我的本机测试用例。有没有人有任何指示?请帮忙。

4

1 回答 1

1

如果您从 adb 创建文件,uid:gid 设置为 2000:2000,权限/data/local/tmp为 0771,这意味着您始终可以删除自己的文件。没有其他位置,你一定是弄乱了权限

adb shell
touch /data/local/tmp/my-file
ls -an /data/local/tmp
rm /data/local/tmp/my-file
于 2019-04-16T08:44:08.960 回答