2017-06-28 82 views
0

「電話連絡先」として内部電話連絡先ブックに連絡先をプログラムで追加する方法はありますか?「電話連絡先」として連絡先を保存する

私が試した:これで

list.add(ContentProviderOperation 
       .newInsert(ContactsContract.RawContacts.CONTENT_URI) 
       .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, null) 
       .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, null) 
       .build()); 

は接触が正常に携帯電話に保存しますが、場合には、私は「表示のみ電話連絡先」にフィルタを設定パラメータ - 作成した連絡先表示されません。ところで、私はnullタイプと接点ができることを読んだが、乾燥が

が、私は、既存の電話連絡から ACCOUNT_TYPEACCOUNT_NAMEを取得しようとした(フルケースを覚えていない)の同期を占め失い、 PhoneLocal Phone Account文字列を取得しますが、私は同じパラメータで連絡先を保存しようとしたとき:

list.add(ContentProviderOperation 
       .newInsert(ContactsContract.RawContacts.CONTENT_URI) 
       .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, "Phone") 
       .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, "Local Phone Account") 
       .build()); 

結果はnull型の最初のケースと同じでした。

「電話連絡先」のようなデータを保存するための定数がありますか(または別の方法である必要がありますか)。

+0

あなたは何とかこの問題を解決しましたか? –

答えて

3

"phone only"アカウントは完全にAndroidでサポートされていませんが、通常、デバイスメーカーによって追加(またはロック解除)されます。

ここに私が知っているものがあります。
形式は<maker>です:ACCOUNT_TYPEACCOUNT_NAME

  1. サムスン: "vnd.sec.contact.phone: "vnd.sec.contact.phone"
  2. HTC:" com.htc.android.pcsc: "PCSC"
  3. ソニー: "com.sonyericsson.localcontacts: "電話連絡先"
  4. LGE:" com.lge.sync: "電話"
  5. LGE(オプション2): "com.lge.phone"
  6. t-mobile: "vnd.tmobileus.conta ct.phone: "MobileLifeコンタクト"
  7. Huawei社: "com.android.huawei.phone: "電話"
  8. レノボ:" ローカル電話アカウント: "電話"
+0

lgeの2番目のオプションのACCOUNT_NAMEも「電話」だと思われます。 –

+0

もっと見つけましたか? –

関連する問題