2013-01-17 2 views
0

연락처 목록을 표시해야하며 프로그램에서 연락처 목록을 만들고 싶지 않습니다. 모든 안드로이드 전화에서 사용할 수있는 연락처 응용 프로그램에 전화하고 싶습니다. 패키지 이름이 com.android.contacts.But입니다. 그러나이 패키지의 클래스 이름을 모르겠습니다.안드로이드 전화로 연락처 응용 프로그램에 전화하는 방법

누구든지 나를 도울 수 있습니다.

+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

관련 문제