无法在我的设备添加联系人 [英] Unable to add contact in my device

查看:182
本文介绍了无法在我的设备添加联系人的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试过以下codeS添加这是不是在我的设备工作新的联系人..
但同样的code是工作的罚款与模拟器..
我使用三星Galaxy适合GT-S5670。

I tried following codes for adding new contact which is not working in my device.. but same code is working fine with Emulator.. I am using Samsung Galaxy fit GT-s5670.

code类 - 1

CODE STYLE - 1

ContentValues values = new ContentValues();                     
values.put(People.NAME,"test contact");     

Uri uri = getContentResolver().insert(People.CONTENT_URI, values);

Uri phoneUri = null;
Uri emailUri = null;

phoneUri = Uri.withAppendedPath(uri, People.Phones.CONTENT_DIRECTORY);

values.clear();
values.put(People.Phones.TYPE, People.Phones.TYPE_MOBILE);
values.put(People.Phones.NUMBER,"0123456789");
getContentResolver().insert(phoneUri, values);

emailUri = Uri.withAppendedPath(uri, People.ContactMethods.CONTENT_DIRECTORY);

values.clear();
values.put(People.ContactMethods.KIND, Contacts.KIND_EMAIL);
values.put(People.ContactMethods.DATA,"test@test.com");
values.put(People.ContactMethods.TYPE, People.ContactMethods.TYPE_HOME);
getContentResolver().insert(emailUri, values);

code类 - 2

CODE STYLE - 2

Intent intent = new Intent(Contacts.Intents.Insert.ACTION, Contacts.People.CONTENT_URI);                
intent.putExtra(ContactsContract.Intents.Insert.NAME,"test contact");
intent.putExtra(ContactsContract.Intents.Insert.PHONE,"0123456789");
intent.putExtra(ContactsContract.Intents.Insert.EMAIL,"test@test.com");
startActivity(intent);

我试了两种方法之上,但我不能在我的设备添加。请帮我解决..!

I tried above both methods but i can't add in my device. Please help me to solve..!

感谢您。

推荐答案

尝试此链接

http://androiddevelopement.blogspot.com/2011/07/insert-update-delete-view-contacts-in.html
或使用code。

http://androiddevelopement.blogspot.com/2011/07/insert-update-delete-view-contacts-in.html or use this code.

ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
int rawContactInsertIndex = ops.size();

ops.add(ContentProviderOperation.newInsert(RawContacts.CONTENT_URI)
                    .withValue(RawContacts.ACCOUNT_TYPE, null)
                    .withValue(RawContacts.ACCOUNT_NAME,null )
                    .build());
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
                    .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, rawContactInsertIndex)
                    .withValue(Data.MIMETYPE,Phone.CONTENT_ITEM_TYPE)
                    .withValue(Phone.NUMBER, "9X-XXXXXXXXX")
                    .build());
ops.add(ContentProviderOperation.newInsert(Data.CONTENT_URI)
                    .withValueBackReference(Data.RAW_CONTACT_ID, rawContactInsertIndex)
                    .withValue(Data.MIMETYPE,
                     StructuredName.CONTENT_ITEM_TYPE)
                    .withValue(StructuredName.DISPLAY_NAME, "Mike Sullivan")
                    .build());  
ContentProviderResult[] res = getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);

这篇关于无法在我的设备添加联系人的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆