我正在使用最新版的Facebook-sdk进行Facebook登录
implementation 'com.facebook.android:facebook-login:[5,6)'
尝试使用自定义按钮
登录 Facebook
我在 Facebook-android-sdk
的 Github 问题中也遇到了这个错误 https://github.com/facebook/facebook-android-sdk/issues/580 这个问题是否已解决。
如果安装了 Facebook 原生应用程序,我想打开对话框,在此之前我使用LoginManager.getInstance().logOut()
退出登录。
我使用默认的登录管理器LoginManager.getInstance()
,然后进行登录和退出登录,但是当我检查令牌是否已注销时,例如AccessToken.getCurrentAccessToken()
,它仍然存在。
以下是我的代码:
callbackManager =
CallbackManager.Factory.create()
LoginManager.getInstance().logOut()
loginManager = LoginManager.getInstance()
LoginManager.getInstance()
.registerCallback(callbackManager, object : FacebookCallback<LoginResult> {
override fun onSuccess(loginResult: LoginResult) {
val graphRequest = GraphRequest.newMeRequest(loginResult.accessToken)
{ jsonObj, _ ->
}
val parameters = Bundle()
parameters.putString("fields", "id,name,email")
graphRequest.parameters = parameters
graphRequest.executeAsync()
}
override fun onCancel() {
}
override fun onError(error: FacebookException) {
var msg = ""
}
})
loginManager.logInWithReadPermissions(
this@SignUpActivity,
listOf("email", "public_profile")
)
清单文件
<meta-data android:name="com.facebook.sdk.ApplicationId"
android:value="@string/facebook_app_id"/>
<activity android:name="com.facebook.FacebookActivity"
android:configChanges=
"keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name" />