0
我想向聯繫人添加自定義字段,這些聯繫人會告訴我聯繫人是否在我的應用程序中進行了標記。 首先,我想創建一個函數,將設置我的自定義數據與給定的ID聯繫,但我嘗試使用的代碼無法正常工作。將自定義數據添加到Android中的聯繫人
public static final String MIMETYPE_EMPLOYEE = "vnd.android.cursor.item/employee";
public void addEmployee(String id){
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
Uri newContactUri = null;
ops.add(ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
.withSelection(ContactsContract.Data._ID + "=?", new String[]{id})
.withValue(ContactsContract.Data.MIMETYPE, MIMETYPE_EMPLOYEE)
.withValue(ContactsContract.Data.DATA1, "yes")
.build());
try{
ContentProviderResult[] res = act.getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
if (res!=null && res[0]!=null) {
newContactUri = res[0].uri;
Log.d(LOG_TAG, "URI added contact:"+ newContactUri); //here it says that it's null :(
}
else Log.e(LOG_TAG, "Contact not added.");
} catch (RemoteException e) {
// error
Log.e(LOG_TAG, "Error (1) adding contact.");
newContactUri = null;
} catch (OperationApplicationException e) {
// error
Log.e(LOG_TAG, "Error (2) adding contact.");
newContactUri = null;
}
Log.d(LOG_TAG, "Contact added to system contacts.");
if (newContactUri == null) {
Log.e(LOG_TAG, "Error creating contact");
}
}
我還試圖用的,而不是更新插入但插入時,我試圖找回我的應用程序崩潰「newContactUri = RES [0] .uri;」 我已經搜索了類似的解決方案,但沒有爲我工作:/
plz試試這個自定義聯繫人: 例如, :[\ [CLICK \]] [1] [1]:http://stackoverflow.com/questions/6853799/add-a-custom-field-to-a-phone-number/7332858 #7332858 – 2012-01-29 13:13:04