2014-09-05 3 views
-1

Так как я не могу воспроизвести аудиофайл из DB blob, мне нужно записать его как файл, прежде чем я смогу его воспроизвести.Титан: Лучшее место для хранения секретных файлов

Глядя на документации, мой выбор:

Ti.Filesystem.applicationDataDirectory

Ti.Filesystem.tempDirectory

Ti.Filesystem.externalStorageDirectory

Ti.Filesystem.applicationCacheDirectory

Учитывая, что я хочу, чтобы мой файл был секретным, поэтому никакое другое приложение не может видеть, что f ile, каков мой лучший вариант?

EDIT: Так что проблема больше с Android, я боюсь, что любой файловый браузер сможет найти файл.

+1

Я считаю, что то, что вы храните внутри applicationDataDirectory, доступно только вашему приложению. – developer82

ответ

0

Я предполагаю, что вы создаете для android, потому что данные ios изолированы песочницей и недоступны по умолчанию (до ios8). Вместо того, чтобы скрывать их, просто закодируйте их, используя base64encode(). И затем вы можете декодировать при доступе к файлу с base64decode().

Сказав это, мне никогда не приходилось использовать его. Итак, у меня нет примера. Но вы можете прочитать об этом в api doc.

Надеюсь, что это поможет.

+0

Не уверен, что я следую. Если я base закодировать его, я получаю файл как текст. Для воспроизведения видеопроигрывателя требуется файл. Поэтому в какой-то момент времени я должен сохранить строку в виде файла. Когда я это сделаю, я бы хотел, чтобы он не был доступен для других программ и просто открывал SD-карту или через файловый менеджер. – R0b0tn1k

0

Вы не упомянули, если вы создаете приложение для iOS или Android. Например, Ti.Filesystem.externalStorageDirectory доступен только для Android (SD-карта).

В любом случае, если вы хотите сохранить аудиофайл, его следует сохранить в <Application_Home>/Documents, поэтому вы должны использовать Ti.Filesystem.applicationDataDirectory. Не забыли настроить remoteBackup флаг см http://docs.appcelerator.com/titanium/3.0/#!/api/Titanium.Filesystem.File-property-remoteBackup

Также взгляните на Инструкции по хранению данных IOS для получения более подробной информации https://developer.apple.com/icloud/documentation/data-storage/index.html

* Если вы хотите сохранить аудиофайл только потому, что вам нужно, чтобы играть , но вам не нужно хранить его в файловой системе, тогда лучше использовать Ti.Filesystem.tempDirectory

Смежные вопросы