我想在“content://sms/”表中插入多条短信。假设是 500 条短信。
我的代码是:
ContentValues [500] valuesarray = new ContentValues[];
for(int i=0;i<values.size();i++){
valuesarray[i] = values.get(i);
}
getContentResolver().bulkInsert(Uri.parse("content://sms/"), valuesarray);
它可以工作,但速度极慢,并且与 insert() 方法没有区别。我在网上搜索,找到了类似的方法:
try {
database.beginTransaction();
for (ContentValues initialValues : allValues) {
values = initialValues == null ? new ContentValues() : new ContentValues(initialValues);
rowId = insertEvent(database, values);
if (rowId > 0)
rowsAdded++;
}
database.setTransactionSuccessful();
} catch (SQLException ex) {
} finally {
database.endTransaction();
}
但这是针对个人数据库的。如何在 Android 的“content://sms/”提供程序中使用这样的方法?