我目前正在开发一个基于C和NDK的Android应用程序。该应用程序需要创建临时文件。在常规Linux系统中,我会使用tmpfile
来确保这些文件被正确创建在临时目录中,并在进程结束时进行清理。
然而,我对各种Android设备的调查似乎表明:
tmpfile
总是失败;- 没有
/tmp
目录; - 不是所有Android变体都有
/data/local/tmp
目录; - 没有设置
TEMP
环境变量; mkstemp
并不比tmpfile
更好。
现在,我相信我可以想办法解决问题,但是既然SDK提供了context.getCacheDir
和File.createTempFile
用于Java应用程序,我希望在C级别也有类似的方法。
是否有人知道一个可靠而跨Android的创建临时文件的方法?