Titanium 钛:存储机密文件的最佳场所

Titanium 钛:存储机密文件的最佳场所,titanium,titanium-mobile,Titanium,Titanium Mobile,因为我不能播放DB blob中的音频文件,所以在播放之前,我必须将其作为文件写入 查看文档,我的选择是: Ti.Filesystem.applicationDataDirectory Ti.Filesystem.tempDirectory Ti.Filesystem.externalStorageDirectory Ti.Filesystem.applicationCacheDirectory 考虑到我希望我的文件是保密的,所以没有其他应用程序可以看到该文件,我的最佳选择是什么 编辑:所以And

因为我不能播放DB blob中的音频文件,所以在播放之前,我必须将其作为文件写入

查看文档,我的选择是:

Ti.Filesystem.applicationDataDirectory

Ti.Filesystem.tempDirectory

Ti.Filesystem.externalStorageDirectory

Ti.Filesystem.applicationCacheDirectory

考虑到我希望我的文件是保密的,所以没有其他应用程序可以看到该文件,我的最佳选择是什么


编辑:所以Android的问题更多,我担心任何文件浏览器都能找到该文件

我假设您是为android构建的,因为ios数据是沙盒的,默认情况下不容易访问(直到ios8)。与其隐藏它们,不如使用
base64encode()
对它们进行编码。然后,您可以使用
base64decode()
访问文件时进行解码

话虽如此,我从未使用过它。所以,我没有一个例子。但是你可以在api文档中阅读


希望这能有所帮助。

您还没有提到您正在为iOS或Android构建应用程序。例如,
Ti.Filesystem.externalStorageDirectory
仅适用于Android(SD卡)

无论如何,如果要保存音频文件,应将其保存在

有关更多详细信息,请参阅iOS数据存储指南


*如果您只想保存音频文件,因为您需要播放它,但不需要将其存储在文件系统中,那么最好使用
Ti.fileSystem.tempDirectory

我想您存储在applicationDataDirectory中的内容只能由您的应用程序访问。我不确定是否遵循。如果我对它进行基本编码,我会得到文本形式的文件。视频播放器需要一个文件才能播放。因此,在某个时间点,我必须将字符串保存为文件。当我这样做时,我希望它不可用于其他程序,只需打开SD卡,或通过文件管理器。