私は、あらかじめデータベースを持っているアンドロイドアプリケーションを構築するのに本当に問題があります。あらかじめデータベースが設定されています - Androidアプリケーション
source codeをご覧ください。
sqlitebrowserを使用してデータベースを作成し、Androidアプリケーションの「assets」ディレクトリにコピーしました。
私はMainActivity.java
でJavaクラスDBAdapter.java
に資産ディレクトリからデータベースをコピーするコードを追加して、私はデータベースが存在しないので、もしそれが資産ディレクトリからデータベースをコピーする必要がありcreateDatabase
関数を呼び出しました。データベースを作成したら、getAllContacts
関数を呼び出してページに表示します。
私はプロジェクトを実行するたびに、私はデバッグできないエラーを投げます。
誰でも問題を解決するために私を助けてください。
UPDATE:
Logcatは、次の例外を示しています。アセット/ MyDB.dbの「連絡先」テーブルはコピー/作成されていないようですが、理由はわかりません。
E/AndroidRuntime( 672): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.me.mydb/org.me.mydb.MainActivity}: android.database.sqlite.SQLiteException: no such table: contacts: , while compiling: SELECT _id, name, email FROM contacts
E/AndroidRuntime( 672): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
E/AndroidRuntime( 672): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
E/AndroidRuntime( 672): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
E/AndroidRuntime( 672): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
E/AndroidRuntime( 672): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 672): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 672): at android.app.ActivityThread.main(ActivityThread.java:4627)
logcatはこれについて言わない何...? – Necronet
ログはどこに表示されますか?申し訳ありませんが、Androidの初心者です – Peter
コンソールで手動で確認する必要がありますhttp://developer.android.com/guide/developing/tools/logcat.html ADTを使用する場合、ログを表示するにはLogcatビューが付属しています – Necronet