我正在尝试使用旧的 facebook 连接身份验证来验证我的 android 客户端,以获得开始使用 facebook 的网络服务所需的必要会话 ID 和其他凭据。
我遇到的问题是,当我的 Android 应用程序启动并尝试加载 facebook 的登录页面时,该登录页面是空白的,并且仅显示 facebook 徽标作为屏幕标题。
没有可见的登录字段或按钮,使我无处登录和验证用户。
我尝试了两个 API,一个是 facebook connect api for androidhttp://code.google.com/p/fbconnect-android/ http://code.google.com/p/fbconnect-android/另一种是官方的android facebook sdk,建议使用它来代替我刚才提到的上一个https://github.com/facebook/facebook-android-sdk/ https://github.com/facebook/facebook-android-sdk/ .
请参阅下图,了解它在我的应用程序上的外观。
这是使用最新的 android sdk facebook 的代码:
/**
* Authenticate facebook network
*/
private void authenticateFacebook() {
// TODO: move this away from this activty class into some kind of
// helper/wrapper class
Log.d(TAG, "Clicked on the facebook");
Facebook facebook = new Facebook(OAUTH_KEY_FACEBOOK_API);
facebook.authorize(this, new AuthorizeListener());
}
class AuthorizeListener implements DialogListener{
@Override
public void onComplete(Bundle values) {
// TODO Auto-generated method stub
Log.d(TAG, "finished authorizing facebook user");
}
@Override
public void onFacebookError(FacebookError e) {
// TODO Auto-generated method stub
}
@Override
public void onError(DialogError e) {
// TODO Auto-generated method stub
}
@Override
public void onCancel() {
// TODO Auto-generated method stub
}
}
以及如何使用它的一个简单示例:http://developers.facebook.com/docs/guides/mobile/ http://developers.facebook.com/docs/guides/mobile/
我的代码或多或少与上面的示例相同。
编辑:我没有注意到 logcat 在我第一次尝试上面的代码时输入的内容,但当时没有抛出异常或警告。只是一张空白页。
然后我又试了一次,没有碰我的代码,现在发生的是加载对话框视图弹出并保持几分钟,直到 facebook 窗口消失并且 logcat 输出以下错误:
11-18 17:26:19.913:
调试/Facebook-WebView(783):Web 视图
加载网址:??????????????????
11-18 17:27:01.756:
调试/Facebook-授权(783):登录
失败的:
com.kc.unity.agent.util.oauth.facebook.DialogError:
与服务器的连接是
不成功。 11-18 17:27:01.783:
调试/Facebook-WebView(783):Web 视图
加载网址:???????????????
请注意,我出于明显的原因修改了客户端 ID,但 logcat 的其余部分未受影响