2

我想在“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/”提供程序中使用这样的方法?

4

1 回答 1

4

如何在 Android 的“content://sms/”提供程序中使用这样的方法?

你不能,对不起。

(此外,该提供程序不是 Android SDK 的一部分,并且可能并非在所有设备上都存在,因此您不应该使用它)

于 2012-11-03T20:07:54.253 回答