Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 自定义联系人字段可能具有一组值和联系人查找性能列表_Android_Performance_Contacts - Fatal编程技术网

Android 自定义联系人字段可能具有一组值和联系人查找性能列表

Android 自定义联系人字段可能具有一组值和联系人查找性能列表,android,performance,contacts,Android,Performance,Contacts,我很确定,根据一些初步研究,我想做的事情是不可行的,但我想,如果有人知道一种方法,问问这里的专家群体也无妨 我想为联系人创建一个自定义字段,用户可以从主联系人应用程序编辑该字段;但是,应该只允许用户从包含四个特定值的列表中进行选择。一个简短的字符串值列表是理想的,但是一个最小/最大范围的int就足够了 我很想知道这两种方法是否可行,但同时也想知道这条路线在性能方面是否合理。更具体地说,每次收到电话或短信时,最好查找联系人(基于电话号码),还是最好存储我自己的一组数据(包括姓名、号码和自定义字段)

我很确定,根据一些初步研究,我想做的事情是不可行的,但我想,如果有人知道一种方法,问问这里的专家群体也无妨

我想为联系人创建一个自定义字段,用户可以从主联系人应用程序编辑该字段;但是,应该只允许用户从包含四个特定值的列表中进行选择。一个简短的字符串值列表是理想的,但是一个最小/最大范围的int就足够了

我很想知道这两种方法是否可行,但同时也想知道这条路线在性能方面是否合理。更具体地说,每次收到电话或短信时,最好查找联系人(基于电话号码),还是最好存储我自己的一组数据(包括姓名、号码和自定义字段)并每隔一段时间在线程中同步联系人信息?还是在第一次运行应用程序时同步联系人,然后使用
ContentObserver
注册更改

这里有一个类似的问题,答案是a


提前感谢。

我看不出将自己的联系人数据集存储在单独的数据库中的目的,因为您显然会遇到同步问题。您可以使用mimetype并以链接的方式针对联系人存储任何您想要的内容

无论何时,只要您想删除联系人,都可以使用自定义的mimetype。您获取联系人id(从
ContactsContract.Data.CONTENT\u URI
),然后运行另一个查询以获取联系人详细信息(从
ContactsContract.Contacts.CONTENT\u URI
)。请注意,这些是不同的表格

我想为联系人创建一个自定义字段,用户可以从主联系人应用程序中编辑该字段

当你使用你的自定义MIMEType时,我不认为这是可能的,可以从主应用程序进行编辑,而且你在这里没有太多的选项。主联系人应用程序将仅显示SDK中的字段。您可以存储联系人的详细信息,但这些信息不会显示在内置的“编辑联系人”屏幕中