내가 프로그래밍 연락처의 표시 이름을 수정하려고 :편집 이름/전화 번호 프로그래밍
try {
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation.newUpdate(Data.CONTENT_URI)
.withSelection(ContactsContract.CommonDataKinds.Phone._ID + " = ?", new String[] {contact_id})
.withValue(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, "anything")
.build());
ContentProviderResult[] result = getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
} catch (Exception e) {
Log.w("UpdateContact", e.getMessage()+"");
for(StackTraceElement ste : e.getStackTrace()) {
Log.w("UpdateContact", "\t" + ste.toString());
}
Context ctx = getApplicationContext();
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(ctx, "Update failed", duration);
toast.show();
}
contact_id
이
코드가 잘 실행 이전 활동에 모여 ContactsContract.CommonDataKinds.Phone._ID
이지만 :
ContentProviderResult[]
결과가 null입니다.- 연락처 이름이 변경되지 않습니다. ed
나는 Data.DISPLAY_NAME
과 실험했지만 동일한 효과가 있습니다.
나는 설명서를 읽었지 만 http://developer.android.com/guide/topics/providers/contacts-provider.html 네이티브 인 텐트를 호출하고 싶지 않습니다.
감사합니다.
정말요? 아무도 도울 수 없습니까? – androfan