从查找 URI 获取电话号码
我一直在尝试使用联系人的查找 URI 获取联系人的电话号码,但没有成功。
Cursor myC = getContentResolver().query(lookupURI, null, null,
null, null);
String phoneNumber;
if (myC.moveToFirst()) {
while (myC.moveToNext()) {
phoneNumber = myC.getString(myC
.getColumnIndex(Phone.NUMBER));
Log.v("t", "phone number is: " + phoneNumber);
}
}
其中 lookupURI.toString()
是这个 URI:content://com.android.contacts/contacts/lookup/0r1-304846522C3052482C4A3442423C3248/1
任何人都知道我在做什么错误的?
I've been trying to obtain a contact's phone number using their lookup URI, but I'm not getting it to work.
Cursor myC = getContentResolver().query(lookupURI, null, null,
null, null);
String phoneNumber;
if (myC.moveToFirst()) {
while (myC.moveToNext()) {
phoneNumber = myC.getString(myC
.getColumnIndex(Phone.NUMBER));
Log.v("t", "phone number is: " + phoneNumber);
}
}
where lookupURI.toString()
is this URI: content://com.android.contacts/contacts/lookup/0r1-304846522C3052482C4A3442423C3248/1
Anyone knows what I'm doing wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不能保证这适用于 4.0,因为我有一段时间没有使用它了,但在 2.3.3 上运行良好:
为了获取 contactId,我首先让用户选择一个联系人:
当用户选择了一个联系人时它回到这个方法:
它调用我的静态 util 类:
其中 contactId = LookupURI.getLastPathSegment();
这么简单的事情竟然这么复杂! :-(
Ps,您可能需要在清单中获得此许可:
Can't guarantee this'll work for 4.0 because I haven't used it in a while but works fine on 2.3.3:
To get the contactId, I first get the user to select a contact:
When the user has selected a contact it comes back to this method:
Which calls my static util class:
Where contactId = lookupURI.getLastPathSegment();
So complex for such a simple thing! :-(
P.s. you may need this permission in your manifest: