Ste*_*hai 7 android facebook facebook-android-sdk
我看到有一个新版本的Facebook SDK(3.0)弃用了旧的Facebook类,并引入了一种使用Session类登录的新方法.
我使用新的登录API快速编写了一个简单的应用程序:
public class MainActivity extends Activity {
private Session mFacebookSession;
private StatusCallback fbStatusCallback = new StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception) {
Log.v("dbg", "state: " + state);
Log.v("dbg", "session: " + session);
}
};
public void bc(View view)
{
mFacebookSession = Session.openActiveSession(this, true, fbStatusCallback);
}
//etc..
}
Run Code Online (Sandbox Code Playgroud)
回调应该被调用两次,首先是用于销毁实际的会话令牌,第二次用于获取新的访问令牌.当然,我的app id被设置为我的清单文件中的元数据等.
当我执行代码时,会出现Facebook登录对话框,我输入我的用户名和密码然后关闭.
但是,在我的日志中我只看到这个:
01-17 03:28:01.587: V/dbg(7002): state: OPENING
01-17 03:28:01.587: V/dbg(7002): session: {Session state:OPENING, token:{AccessToken token:ACCESS_TOKEN_REMOVED permissions:[]}, appId:xxxxxxxxxxxxxxx}
Run Code Online (Sandbox Code Playgroud)
因此,如果我尝试调用mFacebookSession.getAccessToken(),我会得到一个空字符串(非null).
什么似乎是问题?
我怎么解决这个问题(稍后)
我重写了onActivityResult并调用了Session.getActiveSession().onActivityResult(this,requestCode,resultCode,data);
我只是将其放在这里供其他人使用:
Facebook SDK 在让你知道你忘记了什么方面确实很糟糕。如果它不适合您,请仔细检查您的 Facebook 应用程序,并确保您没有忘记某些内容或输入错误的值。在我的例子中,appID 是错误的,而在 Sterpu Mihai 的例子中,它是哈希密钥
| 归档时间: |
|
| 查看次数: |
2542 次 |
| 最近记录: |