我在嘗試修改的值SEND_TO_VOICEMAIL從0到1,反之亦然。 我成功修改了其他聯繫人的詳細信息,例如姓名,電話號碼,暱稱,電子郵件地址等等,但我需要更改SEND_TO_VOICEMAIL。這是2(2)天,我瘋了!這甚至有可能嗎?這應該!在Android聯繫人上設置SEND_TO_VOICEMAIL
我試過很多可能性,但這應該工作...我猜:
String rawContactId = "1";
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(
ContentProviderOperation.newUpdate(ContactsContract.Data.CONTENT_URI)
.withSelection(Data.RAW_CONTACT_ID + "=?" , new String[] { rawContactId })
.withValue(ContactsContract.RawContacts.SEND_TO_VOICEMAIL , 1)
.build()
);
try {
getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops);
} catch (RemoteException e) {
e.printStackTrace();
} catch (OperationApplicationException e) {
e.printStackTrace();
}
但logcat的說: ERROR/AndroidRuntime(822):android.database.sqlite.SQLiteException:沒有這樣的列:send_to_voicemail:,編譯時:UPDATE數據SET send_to_voicemail =? WHERE _id =?
我真的不知道該怎麼嘗試了。任何幫助將非常感激。 謝謝。
P.S. 我並不是java上的大師
謝謝你,這就是答案!我剛剛將「ContactsContract.Data」更改爲「ContactsContract.Contacts」。 – Nifhel
我在三星S3上有問題,有人嗎? – powder366
將SEND_TO_VOICEMAIL標誌用於傳入呼叫嗎?或者在來電前進行工作設置? –