xutils 3データベースアップグレード(markdown版)
1720 ワード
前言:xutilsは本当に良いandroid開発フレームワークで、使用中にプログラマーの多くのコード量を減らしました.しかし、中には注意すべき点もある.その他の使用方法はxutils 3の詳細な使い方を参照してください
黄牛刀の注釈のように、xutilsの注釈は実行時(ps:私にもわかりません)、xutilsの注釈でイベントをクリックすると、頻繁に2つのbuttonをクリックする切り替えをすると、1つのbuttonのクリックに応答するだけで、findviewbyidでonclicklitsenerを設定すると、このバグはありません.
だから私たちはクリック機能を使う時、適切に注釈を使って、現在は頻繁にクリックするだけで問題が発生することを発見して、必ずしも他の場所に何かが埋まっているとは限らない.
デルのビジネスが日々改善されている場合、以前に確立されたデータベースフィールドを変更する必要がある場合があります.データベースのコードを次のように構成します.
私たちはsetDbVersion(x)に任意の数字を記入することができます.もちろん、私たちの実際の状況によっては
フィールドを変更する必要がある場合は、x+nの数字を記入し、
ありがとうandroidオープンソース
1.注記の注意事項
黄牛刀の注釈のように、xutilsの注釈は実行時(ps:私にもわかりません)、xutilsの注釈でイベントをクリックすると、頻繁に2つのbuttonをクリックする切り替えをすると、1つのbuttonのクリックに応答するだけで、findviewbyidでonclicklitsenerを設定すると、このバグはありません.
だから私たちはクリック機能を使う時、適切に注釈を使って、現在は頻繁にクリックするだけで問題が発生することを発見して、必ずしも他の場所に何かが埋まっているとは限らない.
2.データベースのアップグレード
デルのビジネスが日々改善されている場合、以前に確立されたデータベースフィールドを変更する必要がある場合があります.データベースのコードを次のように構成します.
DbManager.DaoConfig daoConfig =newDbManager.DaoConfig()
.setDbName("myapp.db")//
xutils.db.setDbDir(newFile("/mnt/sdcard/"))// , app
.setDbVersion(2)//
.setDbOpenListener(newDbManager.DbOpenListener() {//
@Override
public void onDbOpened(DbManager db) {// , ,
db.getDatabase().enableWriteAheadLogging();
}
})
.setDbUpgradeListener(newDbManager.DbUpgradeListener() {//
@Override
public void onUpgrade(DbManager db,intoldVersion,intnewVersion) {
}
}) .setTableCreateListener(newDbManager.TableCreateListener() {//
@Override
public void onTableCreated(DbManager db, TableEntity table){
Log.i("JAVA","onTableCreated:"+ table.getName());
}
});
私たちはsetDbVersion(x)に任意の数字を記入することができます.もちろん、私たちの実際の状況によっては
フィールドを変更する必要がある場合は、x+nの数字を記入し、
.setDbUpgradeListener(newDbManager.DbUpgradeListener() {//
@Override
public void onUpgrade(DbManager db,intoldVersion,intnewVersion) {
//
db.delete(x.class);
//
db.addColumn(x.class,"test");//
db.saveOrUpdate(db.findall());// isId ,
}
})
ありがとうandroidオープンソース