android获取android 1.5的联系人姓名和电话号码

时间:2010-07-29 22:00:19

标签: android android-intent android-contacts phone-number android-1.5-cupcake

到目前为止,我已经从我在这里看到的示例中获得了此代码:

public class testLayout extends Activity {
final int PICK_CONTACT = 0;
ImageView image = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    image=(ImageView)findViewById(R.id.icon);
    image.setOnClickListener(onChangePerson);
}

private View.OnClickListener onChangePerson=new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(Intent.ACTION_PICK, People.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT);

}
};

@Override
 public void onActivityResult(int reqCode, int resultCode, Intent data) {
 super.onActivityResult(reqCode, resultCode, data);

switch (reqCode) {
 case (PICK_CONTACT) :
   if (resultCode == Activity.RESULT_OK) {
     Uri contactData = data.getData();
     Cursor c =  managedQuery(contactData, null, null, null, null);
     if (c.moveToFirst()) 
     {
       String name = c.getString(c.getColumnIndexOrThrow(People.NAME));

     }
   }
   break;
   }
   }
   }

这允许我打开一个正确显示手机上的联系人的活动,让我选择一个联系人。但是,每次我点击某个联系人时,该程序都会崩溃。任何想法为什么会这样? 感谢

1 个答案:

答案 0 :(得分:0)

好的,谢谢你,Hamy向我指出了我以前不知道的logcat。

事实证明,我在我的android清单文件中一遍又一遍地看到“需要权限READ_CONTACTS”。不幸的是,似乎我把它放在了应用程序标签里面,这导致程序崩溃而没有告诉我原因。 谢谢你帮我解决这个问题!