其他分享
首页 > 其他分享> > android – Facebook新sdk – 无法获得好友列表

android – Facebook新sdk – 无法获得好友列表

作者:互联网

我正在使用新的Facebook-sdk并使用hackbook示例来获取使用FriendsList.java文件的朋友列表. Friendlist Activity每次都被杀死,我在logcat中收到此错误:

11-18 16:20:51.141: ERROR/JavaBinder(7881): !!! FAILED BINDER TRANSACTION !!!.

这个问题每次都可以重现.注意配置文件中的朋友数量为4500.

11-18 16:19:27.932: DEBUG/Facebook-Util(7881): GET URL: https://api.facebook.com/restserver.php?access_token=**********&query=select+name%2C+current_location%2C+uid%2C+pic_square+from+user+where+uid+in+%28select+uid2+from+friend+where+uid1%3Dme%28%29%29+order+by+name&method=fql.query&format=json

11-18 16:20:50.982: WARN/InputManagerService(3426): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@4665a200
11-18 16:20:51.141: ERROR/JavaBinder(7881): !!! FAILED BINDER TRANSACTION !!!

请帮忙!

解决方法:

我没有发布任何代码,因为我在Facebook – Hackbook example for Android.使用Facebook sdk的示例代码
最后我找到了问题并解决了它.

首先问题不在于facebook sdk,而在于响应的大小.如果你在facebook上有超过4k的朋友,并且你使用fql.query或graph方法查询朋友列表,那么Json响应大小超过500kb.现在,如果您尝试通过IPC(意图额外数据)将此500kb响应传递给另一个活动,则该过程失败,原因!活页夹交易失败!!
有关失败活页夹交易的更多信息,请访问Failed binder transaction discussion

我是如何解决这个问题的:
我使用了与上面发布的链接相同的过程.即将响应写入文件并将文件链接发送到其他活动而不是完整的500kb大小响应.

标签:android,facebook,facebook-fql,facebook-android-sdk
来源: https://codeday.me/bug/20191005/1856206.html