自从在我们开发的 Nexus 5x 手机上更新到 Android O (8.1.0) 以来,我们已经看到了很多奇怪的文件访问问题。我们有 1 个文件不断出现,没有理由为什么这个文件,但我很肯定文件在 /sdcard/ 中,我使用 Java 或 C++ (NDK) 来查看文件是否存在,但它返回文件不存在不存在。我可以尝试 100 次,也许 1 次失败,也许 10 次失败。我有 5-6 台设备,所以它不仅仅是 1 台设备。
有没有人见过这样的事情?我们已删除文件并重新下载。该文件用于第三方库,我们想知道是否有文件锁定,但该文件在启动时被访问,因此我们将应用程序滑开,重新启动并立即无法查看该文件。
C++ 示例:
return (access(aFileName.c_str(), F_OK) != -1);
Java 示例:
File lTempTaskFile = new File(lTaskFileName);
if(lTempTaskFile.exists())
{
// blah
}