2016-06-24 2 views
0

나는 특정 연락처에 맞춤형 전화 번호를 추가하고 싶습니다.Android add custom phonenumber

내 코드는 다음과 같습니다

@Override 
protected Void doInBackground(Void... params) { 
    for (PhoneContact phoneContact : this.phoneContactList) { 
     progressDialog.incrementProgressBy(1); 
     try { 
      ContentResolver contentResolver = ctx.getContentResolver(); 
      ArrayList<ContentProviderOperation> operations = new ArrayList<ContentProviderOperation>(); 
      operations.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI) 
        .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, Integer.parseInt(phoneContact.getId())) 
        .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.TYPE_CUSTOM) 
        .withValue(ContactsContract.CommonDataKinds.Phone.LABEL, "ABCDE") 
        .withValue(ContactsContract.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) 
        .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, PhoneNumberFormatter.formatNumber(ctx, "1232444444")) 
        .build()); 
      contentResolver.applyBatch(ContactsContract.AUTHORITY, operations); 
     } catch (RemoteException e) { 
      e.printStackTrace(); 
     } catch (OperationApplicationException e) { 
      e.printStackTrace(); 
     } 
    } 
    progressDialog.dismiss(); 
    return null; 
} 

을하지만 난이 코드를 실행하면 아무것도 hapend 없습니다. 모두 도와 주실 수 있습니까?

+0

매니페스트 파일에 필요한 권한을 포함 시켰습니까? –

답변

0
<uses-permission android:name="android.permission.READ_CONTACTS" /> 
<uses-permission android:name="android.permission.WRITE_CONTACTS" /> 
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" /> 
<uses-permission android:name="android.permission.CALL_PHONE" /> 


<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/> 
<uses-permission android:name="android.permission.GET_ACCOUNTS"/> 
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/> 
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>