Android启动联系人应用程序

问题描述:

我想从我的应用程序活动启动联系人应用程序。我无法理解如何去做。Android启动联系人应用程序

Button contact = (Button) findViewById(R.id.contact); 
    contact.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View arg0) { 
      Intent i4 = new Intent(); 
      i4.setAction(Intent.ACTION_VIEW); 
      i4.addCategory(Intent.CATEGORY_DEFAULT); 
      i4.setType("vnd.android.cursor.dir/phone"); 
      startActivity(i4); 
     } 
    }); 

错误:

enter image description here

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); 
} 

这应该适用于从甜甜圈到姜饼的所有事情:不清楚Honeycomb。

+0

非常感谢好友。工作:) – 2011-04-26 08:42:08

可以启动联系人选取器:

public void doLaunchContactPicker(View view) { 
    Intent contactPickerIntent = new Intent(Intent.ACTION_PICK, 
      Contacts.CONTENT_URI); 
    startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT); 
} 

或者你也可以启动应用程序:

http://developer.android.com/reference/android/provider/Contacts.Intents.html

+0

我想启动的应用程序不是我使用2.2版本,联系人选取器 – 2011-04-26 07:15:30

+0

被斩首 – 2011-04-26 07:50:50

+0

看到ContactsContract:http://developer.android.com/reference/android/provider/ContactsContract.html – 2011-04-26 09:56:20