0
を追加:は、私はこのコードを使用して新しい連絡先を追加しようとしている新しい連絡先(アンドロイド)
try{
ArrayList<ContentProviderOperation> ops = new ArrayList<android.content.ContentProviderOperation>();
if(!name.equals("")) {
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
.withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE)
.withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, name)
.build());
}
if(!number.equals("")){
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
.withValue(ContactsContract.Data.MIMETYPE,ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE)
.withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, number)
.withValue(ContactsContract.CommonDataKinds.Phone.TYPE,ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE)
.build());
}
if(!email.equals("")){
ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI)
.withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0)
.withValue(ContactsContract.Data.MIMETYPE,ContactsContract.CommonDataKinds.Email.CONTENT_ITEM_TYPE)
.withValue(ContactsContract.CommonDataKinds.Email.DATA, email)
.withValue(ContactsContract.CommonDataKinds.Email.TYPE, ContactsContract.CommonDataKinds.Email.TYPE_WORK)
.build());
}
context.getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
}
} catch (Exception e) {
Toast.makeText(context,e.toString(),Toast.LENGTH_SHORT).show();
}
私はまた、マニフェストにWRITE_CONTACTS
許可を指定し、私は、実行時にそれを要求しました。私は悪いやっている何をにエラーが、連絡先が追加されていない返さないことが、しかし
、...
?
Androidのバージョンは、実行時の権限を含める必要がロリポップよりも大きい場合。または、このような権限を与えることができます**設定>アプリケーション>あなたのアプリを選択>権限を参照してください>権限を切り替えます*** –
権限は実行時にも付与されます... –