android-----联系人操作

联系人的读取:

  

Intent it = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);

 启动联系人startActivity(it);

在另一个activity中得到URI

Uri contactData = getIntent().getData();
                person = contactData;
                Cursor cur = managedQuery(contactData, null, null, null, null);
                if(cur.moveToFirst()){
                    name = cur.getString(cur.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); 
                    Log.d(TAGD, name);
                    Toast.makeText(getApplicationContext(), "联系人:"+name, Toast.LENGTH_LONG).show();
                }
                
                Intent intent = new Intent("com.android.camera.action.CROP");
                Uri photo = Uri.fromFile(getFileCache(getApplicationContext(), SAVE_PATH+ "/" + url.hashCode()));
                intent.setDataAndType(photo, "image/*");
                intent.putExtra("crop", "true");
                
                //裁剪后生成的图片的大小
                intent.putExtra("outputX", 100);
                intent.putExtra("outputY", 100);
                
                intent.putExtra("return-data", true);

startActivity(intent)之后再新的activtiy中

if (getIntent() != null) {
                    Bitmap photo = (Bitmap) data.getExtras().get("data");
                    ByteArrayOutputStream baos = new ByteArrayOutputStream();     
                    photo.compress(Bitmap.CompressFormat.PNG, 100, baos); 
                    byte[] photo_bytes = baos.toByteArray();
                    iv.setImageBitmap(photo);
                    setPhoto(person, photo_bytes);
                    Toast.makeText(getApplicationContext(), "已更新"+name+"的照片", Toast.LENGTH_LONG).show();
                }

 

    

 

   

posted @ 2012-10-17 11:39  愤怒的coder  Views(144)  Comments(0)    收藏  举报