android 4.0 读取联系人的问题

JACKCHI1234 2011-11-06 06:56:49
这是java代码:
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 queBtn = (Button)findViewById(R.id.query);
queBtn.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
readContact();
}
}

);
}

public void readContact()
{
Cursor cursor = this.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
while(cursor.moveToFirst())
{
int index = cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME);
String name = cursor.getString(index);
Toast.makeText(this, name, Toast.LENGTH_SHORT).show();
}
}
}

这是描述文件:



请高手看看是哪里不对?运行的时候出现出错!
...全文
994 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangpingtaohn 2012-08-14
  • 打赏
  • 举报
回复
4.0好像读联系人有问题,你试试用2.1--2.3版本读试试,要是没问题说明是版本的问题了,而不是你代码的问题。
linen_lin 2012-05-04
  • 打赏
  • 举报
回复
擦,上面打字打错了 。。uri没有问题。
如果是要查找一次查找全部信息 上面的uri就不行了
要用到 PhoneLookup.content_filter_uri
linen_lin 2012-05-04
  • 打赏
  • 举报
回复
你的目的就是要读出联系人一些信息吧。 有名字电话什么的。但是你用uri不对
public void readContact()
{
Cursor cursor = this.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
if(cursor!=null){
while(cursor.moveToFirst())
{
for(;!cursor.isAfterLast();cursor.moveToNext()){
int index = cursor.getColumnIndex(Contacts.DISPLAY_NAME);
String name = cursor.getString(index);
Toast.makeText(this, name, Toast.LENGTH_SHORT).show();
}
}
}

}
试试这个吧。
xinlan1022 2011-11-07
  • 打赏
  • 举报
回复
cursor.moveToNext()
玉田白菜 2011-11-07
  • 打赏
  • 举报
回复
看看logcat有啥异常信息

80,354

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧