2013-02-08 34 views
0

我做了大量的研究,但找不到任何帮助;android如何以编程方式标记联系人的电话号码

我的问题是:我需要创建一个应用程序,用户可以选择手机上的某些联系人添加到此应用程序,他/她稍后可以通过特殊模板中的短信与他们进行通信。但用户需要在此应用程序中仅选择一个电话号码以激活此用户。这个选择必须在晚些时候登录时放弃。

我能够检索联系人和他们的电话号码使用lookupkey(这将被保存在我的应用程序作为预选用户的参考),但我无法弄清楚如何标记所需的电话号码,我在想添加一个标志的电话号码,但我不知道如何,我不知道这是否是正确的方式来做到这一点,我想设置选定的电话号码为主,然后在需要时查询吨...或者干脆保存手机数字ID(但我不知道,如果保存id的情况下,用户安全换了手机NUMER)...

THX对于任何帮助...

回答

1

经过试验和错误,我发现长时间解决我的问题。我将使用联系人查找键来存储联系人和电话号码以存储电话号码...如下:

String selection = ContactsContract.CommonDataKinds.Phone.LOOKUP_KEY + " = '" + lookupkey+ "' and "+Phone._ID+"='"+phoneid+"'"; 
     String[] projection =new String[] {Phone._ID, Phone.DISPLAY_NAME, Phone.NUMBER}; 
     Cursor managedCursor = getContentResolver() 
       .query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, 
       projection, selection, null, Phone.DISPLAY_NAME + " ASC"); 
+0

我需要一个忙..即使我尝试相同..你能解释你做了什么来保存数字和选择一个号码有活动1 ?? ..谢谢:) – Beginner 2013-12-17 10:05:47

+0

我不知道你是什么在这里问我......但如果这有助于我告诉你我做了什么;在我的应用程序中,用户可以从他的联系人列表中选择联系人和电话,然后将它保存在我的应用程序(lookupkey和phoneid)中,然后根据需要稍后使用它。 – user173488 2013-12-18 05:35:10

0

我对所有这些东西都有点新。据我了解,id匹配很快,但可能不稳定。如果key + id匹配失败,您还应该只使用键来尝试较慢的匹配 - Jeffrey Scofield的SQL选择字符串可以更改为尝试id-and-key或key-only(相信查询优化器优先考虑id匹配) 。

我没有多少运气找到关于存储密钥长期的智慧的信息。

相关问题