代码之家  ›  专栏  ›  技术社区  ›  amol ingawale

ContentResolver以什么格式运行设备上保存的联系人?

  •  1
  • amol ingawale  · 技术社区  · 5 年前

    我使用以下代码获取保存在设备上的联系人

         String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC";
    Cursor cur = mParentActivity.getContentResolver().
                       query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
                               null, null, null, sortOrder);
        while (cur.moveToNext()) {
        String phoneNo = cur.getString(cur.getColumnIndex(
                           ContactsContract.CommonDataKinds.Phone.NUMBER));
        }
    

    我正在用我的华为手机测试这一点,并与当地人取得联系,比如

    +61 455 553 970
    
    +972 55-644-4862
    

    我的问题是,在所有设备的国家电话号码之后,我会得到空间吗?

    0 回复  |  直到 5 年前
        1
  •  1
  •   MDikkii    5 年前

    从文件中:

    数字 公共静态最终字符串号 用户输入的电话号码。

    类型:文本

    所以看起来就像是有人提供的一样。我怀疑你是否能假设它在国家代码之后总是有空格。 你可以查一下你的号码。它可能更适合您的用例。

    参考: https://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Phone.html#NUMBER

    编辑: 你可以用 https://github.com/googlei18n/libphonenumber 验证电话号码。

    推荐文章