Heloou,我嘗試做一個嵌套事務,但扔SqliteDatabaseLockedException,而我不知道爲什麼...的Android,嵌套事務無法正常工作
數據源open()方法分配一個可寫數據庫各自屬性,以稍後調用方法來操作數據。他們都使用SQLHelpder來返回一個可寫數據庫。
@Override
protected Boolean doInBackground(String... url) {
try {
clientDataSource.open();
movementDataSource.open();
clientDataSource.getDatabase().beginTransaction();
movementDataSource.getDatabase().beginTransaction();
if(sendMovements()) {
movementDataSource.getDatabase().setTransactionSuccessful();
clientDataSource.deleteAllClients();
}
updateDatabase(url[0]);
clientDataSource.getDatabase().setTransactionSuccessful();
} catch (JSONException e) {
//Treat Json Exception
} catch (IOException e) {
//Treat IOException
} catch (SQLException e) {
e.printStackTrace();
}finally {
movementDataSource.getDatabase().endTransaction();
clientDataSource.getDatabase().endTransaction();
}
return true;
}
whats裏面的updateDatabase方法? – Techfist
我從服務器檢索數據並插入新的客戶端到db –
哪個db movementDataSource? – Techfist