我想将contact
保存到sim
卡,但我无法执行此操作。我用这段代码来保存联系
ContentValues values = new ContentValues();
values.put(People.NUMBER, phone);
values.put(People.TYPE, Phone.TYPE_CUSTOM);
values.put(People.LABEL, name);
values.put(People.NAME, name);
Uri dataUri = getContentResolver().insert(People.CONTENT_URI, values);
Uri updateUri = Uri.withAppendedPath(dataUri, People.Phones.CONTENT_DIRECTORY);
values.clear();
values.put(People.Phones.TYPE, People.TYPE_CUSTOM);
values.put(People.NUMBER, phone);
updateUri = getContentResolver().insert(updateUri, values);
但它没有保存在SIM卡中。 请帮帮我!
答案 0 :(得分:1)
您应该获取SiM卡联系人的dataUri,而不是存储在设备中的联系人。
Uri simUri = Uri.parse("content://icc/adn");
Cursor cursorSim = this.getContentResolver().query(simUri, null, null,null, null);
此外,您的应用程序应获得读取和写入联系人的权限。添加
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
到您的Android.xml文件。
看看
答案 1 :(得分:1)
cv.put("name", "zzzz"); // Wrong
“名称”不是正确的密钥。使用“tag”代替cv.put("tag", "zzzz");
答案 2 :(得分:0)
您没有提供任何ID添加联系人。
values.put(Data.RAW_CONTACT_ID, idyouwanttoadd);
如需更多信息,请查看以下链接: How to add new contacts in android