2012-01-14 6 views
0

Я хочу загрузить базу данных SQLite (* .db) в приложение AIR, например изображения, mp3 и т. Д. Это делается для того, чтобы было невозможно скопировать мою базу данных для других пользователей.Как вставить SQLite DB (* .db файл) в приложение AIR?

+0

Возможный дубликат [Можно ли встроить базу данных sqlite в приложение Air?] (Http://stackoverflow.com/questions/573350/can-i-embed-a -sqlite-database-in-air-application) – ericsoco

ответ

2

Нет, вы не можете. И даже если вы можете его упаковать, данные на самом деле не будут защищены: поскольку пакет .air - это не что иное, как расширенный .zip-архив, любой может просто извлечь базу данных из файла .air.

Что вам нужно сделать, это зашифровать вашу базу данных и защитить ее с помощью пароля, чтобы только авторизованные пользователи могли получить доступ к базе данных.

Существует достаточно документации о том, как это сделать. Вот вам учебник от Adobe, чтобы вы начали: http://www.adobe.com/devnet/air/flex/quickstart/articles/encrypted_database.html

+0

Вы можете, по сути, вставить файл базы данных в приложение AIR. Я только что назвал этот вопрос обманом; этот ответ описывает процесс: http://stackoverflow.com/questions/573350/can-i-embed-a-sqlite-database-in-an-air-application – ericsoco

+0

Я должен квалифицировать свой комментарий, говоря, что "внедрение в AIR "означает только его включение в архив AIR, который, как сообщает @RIAstar, является всего лишь архивом .zip. Таким образом, он не будет защищен, если вы его не зашифруете, как говорит RIAstar. Но это гораздо больше защиты, чем любой другой вариант, который предлагает AIR помимо потоковых ресурсов во время выполнения через сетевое соединение. – ericsoco

1

Я думаю, что это невозможно. Если вы вставляете его в воздушный файл и устанавливаете приложение AIR, db будет скопирован в папку установки.

Вы можете создать базу данных в месте хранения пользователя

var file:File = File.applicationStorageDirectory.resolvePath("name.db"); 

Пользователи могут по-прежнему перемещаться в Проводнике к файлу. Он будет храниться под/users/username/appdata/appname/Local Store

AppData - это скрытая папка.

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