java - 在android中,如何检索包含特定单词的联系人姓名?

  显示原文与译文双语对照的内容
58 4

设想下面的电话簿:

123456

带Android的 B

654321

112233

用 Android

778899

我想检索联系人的containig"使用 android"。 它的思想是使用"使用 Android"作为选择标准。

我已经尝试了以下操作:


String[] projection = {ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME,
 ContactsContract.CommonDataKinds.Phone.NUMBER};

String where = ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME +" LIKE?";
String selection =" with Android";
String[] selectionArgs = {selection};
Cursor myCursor = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
 projection, where, selectionArgs, null); 

我还尝试用英镑"="代替 "像",但是没有得到结果。

提前致谢!

时间: 原作者:

104 2

我也是安卓的新手,但我觉得这对你有帮助

实际上,你试图获取匹配字符串的查询字符串错误。 在使用类似于。to如果要获取匹配特定文本的某些字符串时,需要将查询字符串指定为:


SELECT * FROM customers
WHERE 'Robert Bob Smith III, PhD.' LIKE '%mit%';

在android中,选择参数作为字符串 array 传递

更改你的代码:


String where = ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME +" LIKE";
String selection ="%with Android";
String[] selectionArgs = {selection};

请检查一下

原作者:
...