2016-08-23 4 views
0

My AppとSqliteの接続はシミュレータで動作しますが、アンドロイドデバイスにパブリッシュすると機能しません。6.0以上のバージョンを搭載したアンドロイドデバイス用のas3 air appでsqlite databaeを使用できますか?

以下は、私が試してみました、アンドロイド携帯電話

// SAMPLE-1 
var conn:SQLConnection = new SQLConnection(); 
conn.addEventListener(SQLEvent.OPEN, openSuccess); 
conn.addEventListener(SQLErrorEvent.ERROR, openFailure); 

var fileLocation:File  = File.applicationStorageDirectory.resolvePath("assets/weddingsql.sqlite"); ; 
conn.openAsync(fileLocation, SQLMode.READ);  






    // SAMPLE-2 
    var fileLocation:File   = File.applicationStorageDirectory.resolvePath("assets/weddingsql.sqlite"); ; 
    var storageDbFilePath:File = File.applicationStorageDirectory.resolvePath("weddingsql.sqlite"); 
    fileLocation.copyToAsync(storageDbFilePath, true); 
    fileLocation.addEventListener(Event.COMPLETE, fileCopiedHandler); 

    function fileCopiedHandler(event:Event):void { 
    trace("File Copied...."); 
    conn.openAsync(storageDbFilePath, SQLMode.READ); 
    } 


// Used in both the samples 
private function openSuccess(evt:SQLEvent):void{ 
    trace(" can not make connection to Database "); } 

private function openFailure(evt:SQLErrorEvent):void{ 
    trace(" can not make connection to Database ");} 

上のすべてのシミュレータでの作業ではなく、サンプルコードですそして最後に、私は、可能な場合は、ネイティブのAndroidに移行するために、すべてのAS3の空気の開発を示唆しています。

+0

あなたはどのようなエラーが発生していますか? – Michael

+0

要するに、可能です。あなたは、アプリケーションをデバッグするときに任意のトレースを取得しますか? logcatに何かエラーがありますか?データベースファイルがすでにデバイスに存在していますか?もしそうでなければ、接続のopenModeはSQLMode.CREATEでなければならないからです。 – Philarmon

+0

電話では、データベースに接続していないため、オープンエラー機能が発生します。それはシミュレータで動作します。 Animate CCとAIR SDK 21 –

答えて

0

マニフェストファイルに追加してみてくださいアンドロイドでのsqliteを使用する:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
+0

はい、追加しました。 –

関連する問題