android-如何从设备的联系人列表中获取用户的连接?

android-如何从设备的联系人列表中获取用户的连接?,第1张

概述是否可以从设备的联系人列表中获取任何联系人的连接?像Google帐户的电子邮件ID和其他第三方api的连接,我正在搜索它的查询.但是没有得到适当的解决方案.因此,请朋友帮我解决这些问题.提前致谢解决方法:在联系人提供程序中,联系人的“连接”只是该特定CONTACT_ID的RawContacts中的所 @H_419_0@是否可以从设备的联系人列表中获取任何联系人的连接?像Google帐户的电子邮件ID和其他第三方API的连接,我正在搜索它的查询.但是没有得到适当的解决方案.因此,请朋友帮我解决这些问题.提前致谢

解决方法:

@H_419_0@在联系人提供程序中,联系人的“连接”只是该特定CONTACT_IDRawContacts中的所有条目.它们的数据存储在Data表中.

@H_419_0@因此,要获取联系人所有连接的所有信息,只需使用适当的过滤器查询数据表就足够了.例如:

@H_419_0@

private static voID getConnections(Context context, int contactID){    // Read all data for contactID    String selection = RawContacts.CONTACT_ID + " = ?";    String[] selectionArgs = new String[] { String.valueOf(contactID) };    Cursor c = context.getContentResolver().query(ContactsContract.Data.CONTENT_URI, null, selection, selectionArgs, null);    while (c.movetoNext())    {        String accountType = c.getString(c.getColumnIndexOrThrow(ContactsContract.RawContacts.ACCOUNT_TYPE));        String accountname = c.getString(c.getColumnIndexOrThrow(ContactsContract.RawContacts.ACCOUNT_name));        String dataMimeType = c.getString(c.getColumnIndexOrThrow(ContactsContract.Data.MIMETYPE));        String dataValue = c.getString(c.getColumnIndexOrThrow(ContactsContract.Data.DATA1));        Log.d("contactInfo", accountname + " (" + accountType + ") - " + dataMimeType + " - " + dataValue);    }    c.close();}
@H_419_0@您可以使用更多限制性的selection / selectionArgs参数(例如,特定的ACCOUNT_TYPE,MIMETYPE等)来过滤此数据.

@H_419_0@当然,您需要在AndroIDManifest.xml中具有适当的权限:

@H_419_0@

<uses-permission androID:name="androID.permission.READ_CONTACTS" />
总结

以上是内存溢出为你收集整理的android-如何从设备的联系人列表中获取用户的连接?全部内容,希望文章能够帮你解决android-如何从设备的联系人列表中获取用户的连接?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1089201.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-27
下一篇2022-05-27

发表评论

登录后才能评论

评论列表(0条)

    保存