如何获取通过Facebook同步适配器同步到原生联系人应用的联系人的脸书ID或网址?
我浏览了不同的网址,但没有看到有关Facebook的任何信息。
我试过
ContactsContract.Data.CONTENT_URI
ContactsContract.CommonDataKinds.Email.CONTENT_URI
ContactsContract.CommonDataKinds.Phone.CONTENT_URI
ContactsContract.Contacts.CONTENT_URI
作为URI已经在下面的代码中:
Uri uri = ContactsContract.Data.CONTENT_URI;
Cursor c = getContentResolver().query(uri, null, null, null, null);
while (c.moveToNext()) {
for (int i=0; i<c.getColumnCount(); i++) {
Log.d(TAG, c.getColumnName(i) + ": " + c.getString(i));
}
Log.d(TAG, "==================================");
}
我确实得到了像
这样的列值contact_status_res_package: com.facebook.katana
在这个转储中,我也获得了联系人状态(contact_status列),但我无处可查看此联系人的facebook网址或ID。
答案 0 :(得分:11)
收到了Google网上论坛的回复(http://groups.google.com/group/android-developers/browse_thread/thread/95110dd7a1e1e0b4):
通过Facebook访问Facebook好友 联系人提供商仅限于a 提供商提供的一些系统应用程序 本身。其他应用程序不能 阅读那些数据。
因此,现在我通过FB Graph api(http://graph.facebook.com/me/friends)获取所有联系人姓名/ id映射的缓存,并将其用于id查找。