我正在使用 android C2DM 开发一个应用程序。sqlite3 是我的后端。一切正常,但对 sqlite3 的性能问题感到震惊。所以我的问题是'我可以将数据库代码放在只执行一次的地方,即 dvm(dalvik 垂直机器)应该只执行一次与数据库有关的代码;在连续运行期间,dvm 不应通过 (db) 代码,因为已创建 db。
更具体地说,我的应用程序将 msg 发送到具有我的应用程序的所有手机。因此,当客户端的应用程序收到消息时,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);
因为每次有 msg 来,这段代码都会被执行。所以我想避免这种情况,我想我已经传达了我的信息。任何帮助将不胜感激。
谢谢,
文盲