【发布时间】:2017-10-24 12:11:24
【问题描述】:
我面临一个问题,但在互联网上没有得到解决方案。 我可以列出所有用户个人资料联系人,但不显示工作资料中的联系人。
有关工作资料的详细信息,请参阅以下链接 https://support.google.com/work/android/answer/6191949?hl=en https://support.google.com/work/android/answer/7029561?hl=en
`
private static final String[] PROJECTION =
{
Contacts._ID,
Contacts.LOOKUP_KEY,
Build.VERSION.SDK_INT
>= Build.VERSION_CODES.HONEYCOMB ?
Contacts.DISPLAY_NAME_PRIMARY :
Contacts.DISPLAY_NAME
};
private static final String SELECTION =
Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB ?
Contacts.DISPLAY_NAME_PRIMARY + " LIKE ?" :
Contacts.DISPLAY_NAME + " LIKE ?";
@Override
public Loader<Cursor> onCreateLoader(int loaderId, Bundle args) {
/*
* Makes search string into pattern and
* stores it in the selection array
*/
mSelectionArgs[0] = "%" + mSearchString + "%";
// Starts the query
return new CursorLoader(
getActivity(),
Contacts.CONTENT_URI,
PROJECTION,
SELECTION,
mSelectionArgs,
null
);
}
`
例如:我在普通个人资料中有一个名为“todd”的联系人,另一方面,我的工作资料下有一个“tom”联系人。现在,在撰写过程中的本机消息应用程序中,它同时显示了 todd 和 tomm。我希望同样的事情发生在我的实现中。
我应该如何获得工作资料联系人?
【问题讨论】:
-
没有使用工作资料的经验,但有件事从您的第一个链接中引起了我的注意。在“我的组织能够控制什么”下有“限制个人资料和工作资料之间可以共享的内容”。我不知道这些限制是如何工作的,但我可以设想一种方法是让他们(“工作”)将可以访问工作资料联系人的应用程序“列入白名单”,而您的应用程序可能不在该列表中(而本机消息应用程序可能是)。另外,我们可以假设(根据第二个链接)您没有关闭工作资料吗?
-
我没有关闭工作资料,当工作资料关闭时,没有应用程序(甚至本机)可以访问属于工作资料的内容/应用程序/联系人。
标签: java android android-contacts