2012-01-14 16 views
0

イメージ、mp3などのように、AIRアプリケーションにSQLiteデータベース(* .dbファイル)を作成したいと思っています。 これは、他のユーザー用にデータベースをコピーできないようにするためです。SQLite DB(* .dbファイル)をAIRアプリケーションに埋め込む方法は?

+0

[あなたはAirアプリケーションにsqliteデータベースを埋め込むことができますか?](http://stackoverflow.com/questions/573350/can-i-embed-a)ここでは、Adobeからのチュートリアルを開始します。 -sqlite-database-in-an-air-application) – ericsoco

答えて

2

いいえ、できません。 .airパッケージは本質的に拡張された.zipアーカイブであり、だれでも.airファイルからデータベースを抽出することができるため、データをパッケージ化することはできますが、データは実際には保護されません。

は、データベースを暗号化し、パスワードで保護して、承認されたユーザーだけがデータベースにアクセスできるようにします。

これを行う方法に関する十分なドキュメントがあります。 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ファイルに埋め込み、AIRアプリケーションをインストールすると、dbはインストールフォルダにコピーされます。

あなたは

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

ユーザーがまだファイルにエクスプローラでナビゲートすることができ、ユーザの保管場所にデータベースを作成することができます。/users/username/appdata/appname /ローカルストアに保存されます

AppDataは隠しフォルダです。

関連する問題