Java android中的线程(启动活动时)
这段代码运行良好,没有崩溃,但当我启动一个新活动时,MainAvivity崩溃,logcat中没有详细信息,只是打印(应用程序终止): 以及InitializeSQLCipher方法:Java android中的线程(启动活动时),java,android,multithreading,Java,Android,Multithreading,这段代码运行良好,没有崩溃,但当我启动一个新活动时,MainAvivity崩溃,logcat中没有详细信息,只是打印(应用程序终止): 以及InitializeSQLCipher方法: private void InitializeSQLCipher() { SQLiteDatabase.loadLibs(MainActivity.this); try { desPath = Environment.getExternalStorageDirectory()
private void InitializeSQLCipher() {
SQLiteDatabase.loadLibs(MainActivity.this);
try {
desPath = Environment.getExternalStorageDirectory() + "/Android/data/ir.plant.vision2";
file = new File(desPath);
if (!file.exists()) {
file.mkdirs();
file.createNewFile();
copyDB(MainActivity.this.getAssets().open("data"), new FileOutputStream(desPath + "/data"));
}
} catch (FileNotFoundException f) {
f.printStackTrace();
} catch (IOException io) {
io.printStackTrace();
}
}
这是因为您正在完成MainActivity,而正在使用
MainActivity的操作仍在进行
确保在完成InitializeSQLCipher
之前不会调用单击按钮,或者单击只需通过引入一些布尔变量等待操作完成,或者您可以将Object.wait和Object.notify组合在一起。请发布InitializeSQLCipher
方法请发布日志错误
private void InitializeSQLCipher() {
SQLiteDatabase.loadLibs(MainActivity.this);
try {
desPath = Environment.getExternalStorageDirectory() + "/Android/data/ir.plant.vision2";
file = new File(desPath);
if (!file.exists()) {
file.mkdirs();
file.createNewFile();
copyDB(MainActivity.this.getAssets().open("data"), new FileOutputStream(desPath + "/data"));
}
} catch (FileNotFoundException f) {
f.printStackTrace();
} catch (IOException io) {
io.printStackTrace();
}
}