Getting a Result from an Activity(by Contact example)
static final int PICK_CONTACT_REQUEST = 1; // The request code private void pickContact() { Uri contacts = Uri.parse("content://contacts"); Intent pickContactIntent = new Intent(Intent.ACTION_PICK, contacts); pickContactIntent.setType(Phone.CONTENT_TYPE); // Show user only contacts w/ phone numbers startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // Check which request it is that we're responding to if (requestCode == PICK_CONTACT_REQUEST) { // Make sure the request was successful if (resultCode == RESULT_OK) { // Get the URI that points to the selected contact Uri contactUri = data.getData(); // We only need the NUMBER column, because there will be only one row in the result String[] projection = {Phone.NUMBER,Phone.CONTACT_ID}; // Perform the query on the contact to get the NUMBER column // We don't need a selection or sort order (there's only one result for the given URI) // CAUTION: The query() method should be called from a separate thread to avoid blocking // your app's UI thread. (For simplicity of the sample, this code doesn't do that.) // Consider using CursorLoader to perform the query. Cursor cursor = getContentResolver() .query(contactUri, projection, null, null, null); cursor.moveToFirst(); // Retrieve the phone number from the NUMBER column int column = cursor.getColumnIndex(Phone.NUMBER); int column_id=cursor.getColumnIndex(Phone.CONTACT_ID); String number = cursor.getString(column); String id=cursor.getString(column_id); EditText edittext=(EditText)findViewById(R.id.edit_message); edittext.setText(number +id); } } }