Android C2DM を使用してアプリを開発しています。sqlite3 は私のバックエンドです。すべて正常に動作していますが、sqlite3 に関するパフォーマンスの問題が発生しています。だから私の質問は、「データベースコードを一度だけ実行される場所に配置できますか?つまり、dvm(dalvik仮想マシン)はデータベースに関連するコードを一度だけ実行する必要があります。データベースが作成されているため、連続実行中にdvmは(db)コードを通過しないはずです。
より具体的には、私のアプリは、私のアプリを持っているすべての電話にメッセージを送信します。そのため、クライアント エンドのアプリがメッセージを受信した場合、dvm は次のコードを実行するべきではありません: SQLiteDatabase db;
//use tat ref to open or create a table
db = openOrCreateDatabase( "/data/data/de.vogella.android.c2dm.simpleclient/app_database/file__0/0000000000000001.db", SQLiteDatabase.CREATE_IF_NECESSARY, null);
try
{
//initialsiging a query with all the table fields
final String CREATE_TABLE_CONTAIN = "CREATE TABLE IF NOT EXISTS tbl_Message4("
+ "id INTEGER PRIMARY KEY AUTOINCREMENT,"
+ "msg TEXT not null,"
+ "msg_time INTEGER not null,"
+ "msg_status INTEGER not null);";
//execute the above query
db.execSQL(CREATE_TABLE_CONTAIN);
メッセージが来るたびに、このコードが実行されるためです。だから私はこれを避けたいです、私は私のメッセージを伝えたと思います。どんな助けでも大歓迎です。
ありがとう、
文盲