2012-02-08 15 views
1

私は次のコードを使用して連絡先を挿入しています。コンタクトインテントの挿入市、国、郵便番号

intent = new Intent(Intent.ACTION_INSERT); 
    intent.setType(ContactsContract.Contacts.CONTENT_TYPE); 
    intent.putExtra(ContactsContract.Intents.Insert.COMPANY,ConstantData.mainTable.getCompany_name()); 
    intent.putExtra(ContactsContract.Intents.Insert.POSTAL,ConstantData.mainTable.getAddress1()+" "+ConstantData.mainTable.getAddress2()+" "+ConstantData.mainTable.getAddress3()+",City: America"); 
    intent.putExtra(ContactsContract.Intents.Insert.PHONE,ConstantData.mainTable.getTelephone_number()); 
    intent.putExtra(ContactsContract.Intents.Insert.SECONDARY_PHONE,ConstantData.mainTable.getMobile_number()); 
    intent.putExtra(ContactsContract.Intents.Insert.EMAIL,ConstantData.mainTable.getEmail_address()); 

    startActivity(intent); 

都市、郵便番号、国を挿入することはできませんので、インテントを使用して挿入する方法はありますか?

+0

ドキュメントを見ましたか?または、ジンジャーブレッドソースコードのソースをブラウズして、どこにアドレスを格納しているのかを調べる方法はありますか?あなたのオプションを使い果たして、そのような短い目で見たアプローチからの答えを期待しないでください。 – JoxTraex

答えて

0

連絡先を追加しましたが、意図を使用していません。コードは次のとおりです。

void addingContact(String firstName, String phoneMobile, String street, String poBox, String city, String state, String zipCode, String country) 
{ 
    ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>(); 
          ops.add(ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI) 
            .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, null) 
            .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, null) 
            .build()); 

         //---------------------- Names 
          ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI) 
            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) 
            .withValue(ContactsContract.Data.MIMETYPE, 
              ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE) 
            .withValue(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, firstName) 
            .withValue(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME, displayName).build()); 

         //--------------------- Mobile Number 
          ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI) 
            .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) 
            .withValue(ContactsContract.Data.MIMETYPE, 
              ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE) 
            .withValue(ContactsContract.CommonDataKinds.Phone.NUMBER, phoneMobile) 
            .withValue(ContactsContract.CommonDataKinds.Phone.TYPE, 
              ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE) 
            .build()); 


//--------------------------------- address 
           ops.add(ContentProviderOperation.newInsert(ContactsContract.Data.CONTENT_URI) 
             .withValueBackReference(ContactsContract.Data.RAW_CONTACT_ID, 0) 
             .withValue(ContactsContract.Data.MIMETYPE, 
               ContactsContract.CommonDataKinds.StructuredPostal.CONTENT_ITEM_TYPE) 
             .withValue(ContactsContract.CommonDataKinds.StructuredPostal.STREET, street) 
             .withValue(ContactsContract.CommonDataKinds.StructuredPostal.CITY, city) 
             .withValue(ContactsContract.CommonDataKinds.StructuredPostal.REGION, state) 
             .withValue(ContactsContract.CommonDataKinds.StructuredPostal.COUNTRY, country) 
             .withValue(ContactsContract.CommonDataKinds.StructuredPostal.TYPE, 
               ContactsContract.CommonDataKinds.StructuredPostal.TYPE_HOME) 
             .build()); 

try 
          { 
           context.getContentResolver().applyBatch(ContactsContract.AUTHORITY, ops); 
          } 
          catch (Exception e) 
          {    
           e.printStackTrace(); 
//        Toast.makeText(this, "Exception: " + e.getMessage(), Toast.LENGTH_SHORT).show(); 
          } 
}