当前位置:编程学习 > wap >>

ContentProvider使用update时的错误,忘各位大侠指点,小弟新手~~~~~

public void onClick(View v) 
{
ContentResolver cr = getContentResolver();
Uri uri = Contacts.People.CONTENT_URI;
String[] projection = {Contacts.People._ID,Contacts.PeopleColumns.NAME,Contacts.PeopleColumns.NOTES};
String selection = Contacts.PeopleColumns.NAME + "=?";
String[] args = {"zhang san"};
Cursor c = cr.query(uri, projection, selection, args, null);
if (c.moveToFirst())
{
for (int i = 0; i < c.getCount(); i++)
{
c.moveToPosition(i);
int id = c.getInt(c.getColumnIndex(Contacts.People._ID));
ContentValues cv = new ContentValues();
cv.put(Contacts.PeopleColumns.NAME, "li si");
Uri updateUri = ContentUris.withAppendedId(uri, id);
cr.update(updateUri, cv, null, null);
}
}
}

以下是错误log:

09-29 14:37:09.969: ERROR/DatabaseUtils(162): Writing exception to parcel
09-29 14:37:09.969: ERROR/DatabaseUtils(162): java.lang.IllegalArgumentException: Empty values
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at android.database.sqlite.SQLiteDatabase.updateWithOnConflict(SQLiteDatabase.java:1639)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at android.database.sqlite.SQLiteDatabase.update(SQLiteDatabase.java:1622)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at com.android.providers.contacts.ContactsProvider2.updateRawContact(ContactsProvider2.java:3752)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at com.android.providers.contacts.ContactsProvider2.updateRawContacts(ContactsProvider2.java:3718)
09-29 14:37:09.969: ERROR/DatabaseUtils(162):     at com.android.providers.contacts.ContactsProvider2.updateInTransaction(ContactsProvider2.java:3530)
--------------------编程问答-------------------- mark一下 --------------------编程问答-------------------- 楼主解决了没》?  我也是一样的问题啊 

求解决啊。。。
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,