我有一個應用程序在Android智能手機上運行並連接到天藍色的移動服務後端(基於節點js)。基本上我所做的是將數據插入移動服務數據庫中的表格。在移動應用程序中,插入我的對象後,我檢查響應對象是否具有與空值不同的id,在這種情況下,我刪除本地sqlite數據庫中的行,如果id等於「null」,則稍後重試操作。問題是,我經常沒有收到id,所以id =「null」,然後重試操作,但是在獲取azure數據庫時,行已成功插入。從Azure移動服務插入後在移動客戶端獲得響應的最終問題
這裏是我的代碼部分:
if (downeventstable == null && !error)
downeventstable = FirstmenuScreen.mClient.getTable("downevents" + servicio, downevents.class);
boolean error2 = true;
try {
downeventstable.insert(dwnevent).get();
error2=false;
} catch (Exception e) {
error2 = true;
break;
}
if (!error2 && dwnevent.getId() != null) {
// if no error and id was received deletes row locally in sqlite
}
我想這個問題是由移動網絡的質量差造成的,也許應用程序失去了蔚藍的一個全成插入後連接,並沒有得到響應對象。我如何知道數據是否插入天藍色並處理這些情況?
謝謝,的確,我正在使用常規表手動執行表同步,很高興能夠聽到關於脫機同步功能的信息!由於行ID是由azure後端(默認ID生成器腳本)定義的,因此我沒有得到409個結果代碼,可能在應用程序中設置ID以便記錄在ID重複時被拒絕是一個好主意。 –