2013-01-17 84 views
0

我需要顯示聯繫人列表並且不想通過程序創建聯繫人列表。我想調用所有Android手機中可用的聯繫人應用程序。 我已經知道包名是com.android.contacts.But我不知道這個包的類名。如何在Android手機中撥打聯繫人應用程序

任何人都可以幫助我。

+0

我知道這一點,但我想從另一個應用程序調用com.android.contacts包。但我不知道這個包的類名。 –

+0

你的問題回答了嗎?或者這沒有解決你的問題? – ObAt

回答

1

使用此代碼:

void showContacts() 
{ 
    Intent i = new Intent(); 
    i.setComponent(new ComponentName("com.android.contacts", "com.android.contacts.DialtactsContactsEntryActivity")); 
    i.setAction("android.intent.action.MAIN"); 
    i.addCategory("android.intent.category.LAUNCHER"); 
    i.addCategory("android.intent.category.DEFAULT"); 
    startActivity(i); 
} 

來源:Android Launching Contacts Application

或者使用此代碼來獲取所有聯繫人沒有空空新的意圖:

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); 
startActivityForResult(intent, PICK_CONTACT); 

@Override 
public void onActivityResult(int reqCode, int resultCode, Intent data) { 
    super.onActivityResult(reqCode, resultCode, data); 

    switch (reqCode) { 
    case (PICK_CONTACT) : 
     if (resultCode == Activity.RESULT_OK) { 
     Uri contactData = data.getData(); 
     Cursor c = managedQuery(contactData, null, null, null, null); 
     if (c.moveToFirst()) { 
      String name = c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); 
      // TODO Whatever you want to do with the selected contact name. 
     } 
     } 
     break; 
    } 
} 

而且不要忘了設置此權限:

<uses-permission android:name="android.permission.READ_CONTACTS"/> 

來源:How to call Android contacts list?

+0

很好的例子.. + 1 – ridoy

相關問題