我有一个号码存储在我的本地联系人中,如
XYZ 9986799867
现在,我将阅读此内容并将其存储在我的数据库中
1 | xyz | 9986799867
假设我接到电话,它会像+919986799867
我的搜索失败,因为传入号码中存在+91不匹配,但本地数据库不存在。
如果我在联系人DB上执行相同的搜索,
Cursor cursor = ct.getContentResolver().query(contactUri, projection, null, null, null);
它提供了正确的名称。这是系统搜索,你能告诉它内部如何处理
答案 0 :(得分:1)
您可以使用以下库将包含国家/地区代码的数字与不在Java中的数字进行比较:
libphonenumber-6.2.2.jar
使用此库,您可以使用 isNumberMatch ,如果数字匹配,则返回true。
你可以在这里找到更多信息:
答案 1 :(得分:0)
选项1:首先找到手机号码长度10表示直接调用选择查询,否则使用substring方法在调用select查询后获取最后10位数字 选项2:使用国家/地区代码保存手机号码