我想在“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 /”提供程序中使用这样的方法?
答案 0 :(得分:4)
如何在Android的“content:// sms /”提供程序中使用这样的方法?
你不能,抱歉。
(此外,该提供商不是Android SDK的一部分,并且可能不存在于所有设备上,因此您不应该使用它)