gpt4 book ai didi

android - 如何检测Android手机联系人应用程序是否支持结构化邮政地址?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:14:48 25 4
gpt4 key购买 nike

Samsung galaxy S4 和一些设备在使用 Intent Action_Insert 时仅支持 Structured postal

ArrayList<ContentValues> data = new ArrayList<ContentValues>();
...
ContentValues name = new ContentValues();
name.put(Data.MIMETYPE, StructuredPostal.CONTENT_ITEM_TYPE);
name.put(StructuredPostal.STREET, bundle.getString(StructuredPostal.STREET));
name.put(StructuredPostal.CITY, bundle.getString(StructuredPostal.CITY));
name.put(StructuredPostal.REGION, bundle.getString(StructuredPostal.REGION));
name.put(StructuredPostal.NEIGHBORHOOD, bundle.getString(StructuredPostal.NEIGHBORHOOD));
name.put(StructuredPostal.POSTCODE, bundle.getString(StructuredPostal.POSTCODE));
name.put(StructuredPostal.COUNTRY, bundle.getString(StructuredPostal.COUNTRY));
data.add(name);
Intent intent = new Intent(Intent.ACTION_INSERT, ContactsContract.Contacts.CONTENT_URI);
intent.putExtra(ContactsContract.Intents.Insert.NAME, contactName);

if(android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.HONEYCOMB)
intent.putParcelableArrayListExtra(Insert.DATA, data);
else
intent.putExtra(ContactsContract.Intents.Insert.POSTAL, address);

现在对于在 4.2 上运行的 Galaxy S3 不支持结构化地址并且不显示使用上述代码的地址。

那么我如何确定设备是否支持结构化邮政地址以便我可以为两者提供支持?

注意:如果我使用 intent.putExtra(ContactsContract.Intents.Insert.POSTAL, address); Galaxy S3 在使用 intent 时显示地址.putParcelableArrayListExtra(Insert.DATA, data); 此 S3 无法显示地址。

最佳答案

尝试保存结构化字段(对于支持它们的手机)以及 StructuredPostal.FORMATTED_ADDRESS。不过,您需要自己进行格式化。这就是VCardEntry确实如此。

关于android - 如何检测Android手机联系人应用程序是否支持结构化邮政地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24827160/

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