android无法获取facebook个人资料picutre



我试图在android中使用facebook实现登录,我正确地获得了电子邮件和姓名,但我无法获得个人资料图片

这是代码

override fun onSuccess(loginResult: LoginResult) {
println(loginResult)
val request = GraphRequest.newMeRequest(
loginResult.accessToken
) { `object`, response ->
Log.v("LoginActivity", response.toString())
// Application code
val id = `object`.getString("id")
val email = `object`.getString("email")
val name = `object`.getString("name")
val picture = `object`.getString("picture")
Picasso.get().load(picture).into(image_view)
//                        registerRequest(email,name)
}
val parameters = Bundle()
parameters.putString("fields", "id,name,email,picture.type(large)")
request.parameters = parameters
request.executeAsync()
}

我也试过了,但也不起作用

Picasso.get().load("https://graph.facebook.com/" + id + "picture?/type=normal").into(image_view)

试试这个。

val profilePicture =
URL("https://graph.facebook.com/" + jsonObject.getString("id") + "/picture?width=200&height=200")

在加载到Picasso或Glide 之前也要放一张空支票

请确保您拥有Facebook的必要权限,可以读取用户的个人资料图片,然后请求它传递您使用Facebook的LoginManager作为URL参数成功登录时收到的访问令牌。(我假设你使用的是Android版的Facebook登录SDK(

Picasso.get()
.load(firebaseUser.getPhotoUrl() + 
"?access_token=" + 
facebookLoginResult.getAccessToken().getToken())
.into((ImageView) findViewById(R.id.testing));

确保您使用HTTPS

最新更新