0
我有下面的代码运行良好,当我直接使用eclipse运行它。但是,当我将它导出为apk并安装它时,我无法启动它。它只是不断崩溃。安装android应用程序与eclipse工作,但与apk安装应用程序启动失败?
public class MyDatabase extends SQLiteOpenHelper{
private static final String DB_NAME = "DB";
SQLiteDatabase db;
/** CREATE TABLE SQL */
private static final String CREATE_TABLE_SQL = "";/*Create table statement*/
public MyDatabase(Context context) {
super(context, DB_NAME, null, 1);
db = getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.beginTransaction();
try {
db.execSQL(CREATE_TABLE_SQL);
Log.d("t", "database:"+DB_NAME+" created");
db.setTransactionSuccessful();
} catch (Exception e) {
e.printStackTrace();
} finally {
db.endTransaction();
db.close();
super.close();
}
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
安装它与Eclipse和安装与apk之间有什么区别?
谢谢。
问候, 德克斯特
您的create table sql statment在哪里?哪里是实际“创建数据库”的SQL? – 2014-11-01 11:24:02
你应该使用你的logcat。并通过APK安装apk时分析它。通过使用“ADB LOGCAT”命令。 – 2014-11-01 11:25:19
嗨,创建语句是绝对正确的,因为我创建数据库没有问题。我删除它,以便更容易阅读。我发现删除这一行 db = getWritableDatabase();和这一行:SQLiteDatabase db;修复了这个问题。这是为什么? – user3300845 2014-11-02 11:24:30