我正在開發一個應用程序,當用戶選擇應用程序升級過程時,我必須更新我的數據庫。簡單地說,我想在我的應用程序遷移到新版本時進行數據庫更改。 如何完成這項工作,請提出建議。如何在應用程序升級過程中升級我的數據庫?
和
我開發一個應用程序,其已經在市場上的一些版本現在我想發佈一個更新到我的應用程序,但我沒有得到任何信息,如何做到這一點。它是否像一個正常的apk文件創建?如果是的話我需要使用任何adb命令來測試這個apk文件嗎?請建議.. !!!
感謝, 拉姆。
我正在開發一個應用程序,當用戶選擇應用程序升級過程時,我必須更新我的數據庫。簡單地說,我想在我的應用程序遷移到新版本時進行數據庫更改。 如何完成這項工作,請提出建議。如何在應用程序升級過程中升級我的數據庫?
和
我開發一個應用程序,其已經在市場上的一些版本現在我想發佈一個更新到我的應用程序,但我沒有得到任何信息,如何做到這一點。它是否像一個正常的apk文件創建?如果是的話我需要使用任何adb命令來測試這個apk文件嗎?請建議.. !!!
感謝, 拉姆。
請參閱this文檔瞭解有關SQLiteOpenHelper的信息。它提供了用於執行更新的功能,以及onCreates(創建數據庫時)。
onUpgrade方法應該工作的方式是將db,舊版本號和新版本號傳遞給它,以便您可以對其進行比較。你會做這樣的事情:
public void onUpgrade(SQLiteDatabase db, int oldVer, int newVer)
{
if (oldVer == 1 && newVer == 2)
{
db.exec("ALTER TABLE tbl_names RENAME TO names");
//.....
}
}
版本號通常爲一個類級別的變量的地方無論是在你的SQLiteOpenHelper或您的主數據庫存儲幫手。
這將需要重新啓動您的應用程序。如果您指的是用戶進行應用內升級的能力,那麼這可能對您無效。
如果您使用SQLiteOpenHelper
(您應該),只需覆蓋onUpgrade
方法。然後,每當你的數據庫結構發生變化時,你就調用數據庫的版本號。在開發指南的數據存儲上閱讀this topic。另外,看看實現這個的NotePad樣本。
從哪裏要更新您的數據庫? – user370305