Ios cordova插件通过电话号码搜索联系人姓名

Ios cordova插件通过电话号码搜索联系人姓名,ios,cordova,search,plugins,contact,Ios,Cordova,Search,Plugins,Contact,我最近尝试使用cordova联系人插件查找联系人姓名。 搜索参数是一个电话号码。我发现,iOS正在将电话号码格式化为+1232222。 我在找“2232222”。看看我看到的源代码,contact插件在与搜索字符串进行比较之前不会删除whitepsaces,因此将永远找不到contact。 这是通缉犯的行为吗?我是唯一一个在这个“特性”上苦苦挣扎的人,还是有一个已知的解决方法——不改变源代码 干杯 克里斯我遇到了这个问题,并找到了解决办法。 如果将电话号码中的空格替换为以下unicode字符:\

我最近尝试使用cordova联系人插件查找联系人姓名。 搜索参数是一个电话号码。我发现,iOS正在将电话号码格式化为+1232222。 我在找“2232222”。看看我看到的源代码,contact插件在与搜索字符串进行比较之前不会删除whitepsaces,因此将永远找不到contact。 这是通缉犯的行为吗?我是唯一一个在这个“特性”上苦苦挣扎的人,还是有一个已知的解决方法——不改变源代码

干杯
克里斯

我遇到了这个问题,并找到了解决办法。 如果将电话号码中的空格替换为以下unicode字符:\u00a0,则会得到正确的结果

我相信数字中的“空格”不是实际的空格,而是unicode字符

我的号码是这样的:07900 255XXX

但有一个难题:到目前为止,我的测试结果并不一致。 如果我编辑手机联系人并删除空格,然后保存联系人,手机会将其放回原处,联系人将显示在搜索中(我假设它会用此字符替换空格)


其他一些联系人会在搜索中显示而不替换此联系人,但如果我替换,则不会显示。我只能假设我有两种“格式”的联系人。对你来说,这也是一个正确的方向,我希望,对我来说,这是有效的,如果没有结果,我将只搜索一个。。。试试另一个。

这是contact.m中搜索失败的代码:
NSPredicate*containPred=[NSPredicate predicateWithFormat:@“SELF contains[cd]@”,testValue]