Reputation: 1257
I want to emded SQLite database (*.db file) to the AIR app, like images, mp3 etc. This is to ensure that it was impossible to copy my database for other users.
Upvotes: 0
Views: 1553
Reputation: 11912
No, you can't. And even if you could package it, the data wouldn't really be protected: since an .air package is in essence nothing more than an enhanced .zip archive, anyone could just extract the database from the .air file.
What you have to do is encrypt your database and protect it with a password so that only authorized users can access the database.
There's ample documentation on how to do this. Here's a tutorial from Adobe to get you started: http://www.adobe.com/devnet/air/flex/quickstart/articles/encrypted_database.html
Upvotes: 2
Reputation: 531
I think this is not possible. If you embed it to the air file andinstall the AIR app the db will be copied to the installation folder.
You could create the database in the user storage location
var file:File = File.applicationStorageDirectory.resolvePath("name.db");
Users could still navigate in explorer to the file. It will be stored under /users/username/appdata/appname/Local Store
AppData is a hidden folder.
Upvotes: 1