Android中讀取聯繫人

讀取聯繫人需要獲取權限:android.permission.READ_CONTACTS
android.permission.WRITE_CONTACTS
具體例題如http://yunpan.cn/cZNcQw3cf3Spb  訪問密碼 9d90————ReadContact文件
public class ReadContactActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super .onCreate(savedInstanceState);
        setContentView(R.layout. main );
       
       Button randcontact = (Button)findViewById(R.id. randcontact );
       
       
        randcontact.setOnClickListener( new OnClickListener() {
                     
                      @Override
                      public void onClick(View v) {
                           
                           TextView randTv = (TextView)findViewById(R.id. randtv );
                           
                      List<String> list = new ArrayList<String>();
                            //1,查詢raw_contact表獲取聯繫人的id
                            //獲取中間人
                           ContentResolver resolver =  getContentResolver();
                            //獲取raw_contacts表的 uri
                           Uri uri = Uri.parse( "content://com.android.contacts/raw_contacts");
                            //獲取data表的 uri
                           Uri Datauri = Uri.parse( "content://com.android.contacts/data");
                            //查詢raw_cantact
                           
                           Cursor cursor =  resolver.query(uri, null null nullnull );
                            while (cursor.moveToNext()){
                                  String id = cursor.getString(cursor.getColumnIndex("contact_id" ));
                                  Log. v( "5", id);
                                   //2。獲取data表
                                  Cursor Datacursor = resolver.query(Datauri, null "raw_contact_id=?" new String[]{id}, null);
                                   while (Datacursor.moveToNext()){
                                         String data1 = Datacursor.getString(Datacursor.getColumnIndex("data1" ));
                                         String DataCursor = Datacursor.getString(Datacursor.getColumnIndex("mimetype" ));
                                         list.add(data1);
                                         
                                                randTv.setText(list.toString());
                                  }
                                  Datacursor.close();
                                  
                                   //randTv.setText("----------------------");
                           }
                           cursor.close();
                           
                     }
              });
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章