2016-08-30 21 views
0

私は連絡先と電子メールのIDをユーザーの電話帳から取得したいと思うし、テキストフィールドに入力したい。私のコードがある連絡先とユーザーの電子メールIDを取得する電話帳

..

Uri uri = Uri.parse("content://contacts"); 

Intent intent = new Intent(Intent.ACTION_PICK, uri); 

    intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE); 

    Log.i("please","work"); 

    startActivityForResult(intent, REQUEST_CODE); 

onActivityResult()メソッド

@Override 

protected void onActivityResult(int requestCode, int resultCode, 

     Intent intent) { 

    if (requestCode == REQUEST_CODE) { 

     if (resultCode == RESULT_OK) { 

      Uri uri = intent.getData(); 

      String[] projection = { Phone.NUMBER, Phone.DISPLAY_NAME }; 

      Cursor cursor = getContentResolver().query(uri, projection, 
        null, null, null); 
      cursor.moveToFirst(); 

      int numberColumnIndex = cursor.getColumnIndex(Phone.NUMBER); 
      String number = cursor.getString(numberColumnIndex); 

      int nameColumnIndex = cursor.getColumnIndex(Phone.DISPLAY_NAME); 
      String name = cursor.getString(nameColumnIndex); 

      Log.d(TAG, "ZZZ number : " + number +" , name : "+name); 

     } 
    } 
}; 

が、これはonActivityResult関数を呼び出していません。

問題をお手伝いしますか?

+0

私の問題はOnActivityResult関数が呼び出さ取得されていないということです。.. –

答えて

0

private void insertDummyContact() { 


     Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null); 
     while (phones.moveToNext()) { 
      String name = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)); 
      String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); 

      AppController.MyApplication.getInstance().trackScreenView("Contact List Invite"); 
      Name.add(name); 
      Number.add(phoneNumber); 


     } 
     phones.close(); 
     // Log.e("number", Name.toString()); 
     // Log.e("name", Number.toString()); 

     ListAdapter = new ContactListAdapter(ContactListInvite.this, Name, Number); 
     ContactList.setAdapter(ListAdapter); 
     ListAdapter.notifyDataSetChanged(); 
    } 
+0

のように取得するの連絡先リストは、実際に私は特定の連絡先をクリックの上、私がログにITZ番号と電子メールを取得する必要があることをしたい...ので、私コードの上にしようとしているが、それはちょうど私を連絡先に連れて行っているが、OnActivityResult()を呼び出さないでクリックしてください –

+0

あなたはフラグメントを使用しています – Ashish

関連する問題