tags:

views:

65

answers:

1

Hello,

I'm really new in Android programming, so I have a simple question getting a phone number from contacts in my application. The method I want to implement is that the user clicks a button in my app and will be forwarded to the contacts. In contacts user has to click on a phone number and this number should be returned to a textfield. Is there a simple way to do this instead to implement it by ContentResolver?

Thanks for your answer.

+1  A: 

Launch a a Pick contacts intent with startActivityForResult. In your case you just add the startActivityForResult call in the OnClick listener for the button.

public class MyActivity extends Activity {

     static final int PICK_CONTACT_REQUEST = 0;

     protected boolean onKeyDown(int keyCode, KeyEvent event) {
         if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
             // When the user center presses, let them pick a contact.
             startActivityForResult(
                 new Intent(Intent.ACTION_PICK,
                 new Uri("content://contacts")),
                 PICK_CONTACT_REQUEST);
            return true;
         }
         return false;
     }

     protected void onActivityResult(int requestCode, int resultCode,
             Intent data) {
         if (requestCode == PICK_CONTACT_REQUEST) {
             if (resultCode == RESULT_OK) {
                 // A contact was picked.  Here we will just display it
                 // to the user.
                 startActivity(new Intent(Intent.ACTION_VIEW, data));
             }
         }
     }
 }
BrennaSoft
Hello Rpond,sorry for my late answer and thank you very much for your reply, this works like a charm ;) Is there also a possibility to call directly the ContactPhoneMailPicker - intent. I can't find any Uri for that.