gpt4 book ai didi

Android - 电话号码格式化和删除国家/地区代码

转载 作者:行者123 更新时间:2023-11-29 15:45:38 24 4
gpt4 key购买 nike

我已经构建了一个应用程序,我在其中循环并收集用户的电话联系人,我的目标是然后使用这些号码并查询我的解析数据库并查找包含用户联系人的记录(这将检查是否有任何用户联系人是我的应用程序的用户,用户的电话号码将在他们注册时保存到我的解析数据库中)。我遇到的问题是,当收集用户联系人号码时,他们以不同的格式返回,有些是 +447966000000,有些是 07966000000,有些是 07 966000 000000 等。

我的问题是,在将我的号码保存到数据库并从用户联系人中检索它们时格式化我的号码的最佳方式是什么,以便所有号码都以相同的格式保存和检索,以便当我对它们进行条件检查时会容易比较吗?

我已经下载了 phone Number Utils 库,但我不确定库中的什么可以用来做这样的事情。



到目前为止的代码:

 Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null,null, null);
while (phones.moveToNext())
{
String name=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

Toast.makeText(getApplicationContext(),name + " " + phoneNumber, Toast.LENGTH_LONG).show();
}
phones.close();

最佳答案

您可以使用 PhoneNumberUtils.compare 来比较和检查它们是否相同。如果它们相同则忽略国家代码等,则返回 true。

例子:

PhoneNumberUtils.compare(context, 1234567890, +911234567890);

返回 true

关于Android - 电话号码格式化和删除国家/地区代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33565197/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com