如何在设备上运行带有数据库的android应用程序?

时间:2011-02-08 13:31:00

标签: android sqlite

我用数据库创建了一个android应用程序。我想在我的朋友Android设备上运行该应用程序。 每当我尝试在设备上运行应用程序时,它都会引发安全性异常。我已在设备上启用调试功能。 早些时候,当我在没有数据库的情况下运行相同的东西时,设备不会抛出任何异常。 该应用程序在模拟器上完全正常。 可能是什么问题,我该如何解决? 提前谢谢。

编辑:

这是堆栈跟踪

02-08 19:18:43.474: DEBUG/Twitter-MessageReceiver(5593): action android.intent.action.USER_PRESENT
02-08 19:18:43.474: DEBUG/dalvikvm(9522): GC freed 367 objects / 20200 bytes in 124ms
02-08 19:18:43.574: ERROR/Database(9522): sqlite3_open_v2("/data/data/myListActivity.helios/Recipe.db", &handle, 2, NULL) failed
02-08 19:18:43.574: DEBUG/AndroidRuntime(9522): Shutting down VM
02-08 19:18:43.574: WARN/dalvikvm(9522): threadid=3: thread exiting with uncaught exception (group=0x4001e390)
02-08 19:18:43.584: ERROR/AndroidRuntime(9522): Uncaught handler: thread main exiting due to uncaught exception
02-08 19:18:43.594: ERROR/AndroidRuntime(9522): java.lang.RuntimeException: Unable to start activity ComponentInfo{myListActivity.helios/myListActivity.helios.MyListActivity}: android.database.sqlite.SQLiteException: unable to open database file
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.ActivityThread.access$2200(ActivityThread.java:126)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.os.Handler.dispatchMessage(Handler.java:99)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.os.Looper.loop(Looper.java:123)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.ActivityThread.main(ActivityThread.java:4603)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at java.lang.reflect.Method.invokeNative(Native Method)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at java.lang.reflect.Method.invoke(Method.java:521)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at dalvik.system.NativeStart.main(Native Method)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522): Caused by: android.database.sqlite.SQLiteException: unable to open database file
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.database.sqlite.SQLiteDatabase.dbopen(Native Method)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1789)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:805)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at myListActivity.helios.MyListActivity.getDetails(MyListActivity.java:153)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at myListActivity.helios.MyListActivity.onCreate(MyListActivity.java:29)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
02-08 19:18:43.594: ERROR/AndroidRuntime(9522):     ... 11 more
02-08 19:18:43.614: INFO/Process(82): Sending signal. PID: 9522 SIG: 3
02-08 19:18:43.624: INFO/dalvikvm(9522): threadid=7: reacting to signal 3
02-08 19:18:43.644: DEBUG/apiurl(5593): apiurl twitter.com
02-08 19:18:43.644: INFO/dalvikvm(9522): Wrote stack trace to '/data/anr/traces.txt'
02-08 19:18:43.704: DEBUG/PhoneWindow(82): DebugMonitor class=com.android.server.am.AppErrorDialog focus=true
02-08 19:18:43.774: DEBUG/PlurkReceiver(5593): Intent.ACTION_USER_PRESENT SyncInterval=3600000,currTime=1297172923775
02-08 19:18:43.774: DEBUG/PlurkReceiver(5593): Intent.ACTION_USER_PRESENT lastStreamSyncTime=0,lastFriendSyncTime=0
02-08 19:18:43.814: DEBUG/FlickrReceiver(5593): Intent.ACTION_USER_PRESENT SyncInterval=7200000,currTime=1297172923816

1 个答案:

答案 0 :(得分:0)

好像找不到数据库文件。 在应用程序启动时创建它,然后重试。

相关问题