我正在使用SocialAuth v4.3 java库来提供社交登录功能。它适用于谷歌,Facebook,但不适用于谷歌加。我收到了以下错误:
org.brickred.socialauth.SocialAuthConfig - Configuration for provider googleplus is not available
有关如何解决此问题的任何线索?另一个问题是登录Google并不提供出生日期,地点。是否有可能获得此信息?
答案 0 :(得分:-1)
1)您必须指定Google+
授权的凭据。
使用
创建assets/oauth_consumer.properties
文件
googleapis.com.consumer_key=YOUR_CONSUMER_KEY
googleapis.com.consumer_secret=SECRET
或以编程方式添加凭据
socialAuthAdapter.addConfig(SocialAuthAdapter.Provider.GOOGLEPLUS, YOUR_CONSUMER_KEY, SECRET, null /*permissions*/);
2)callback url
应在SocialAuthAdapter
socialAuthAdapter.addCallBack(SocialAuthAdapter.Provider.GOOGLEPLUS, "PLACE_YOUR_URL_HERE");
如何创建callback url
(又名。redirect_uri
),您可以阅读here
3)指定响应监听器
socialAuthAdapter = new SocialAuthAdapter(new ResponseListener());
private class ResponseListener implements DialogListener {
@Override
public void onComplete(Bundle bundle) {
final String providerName = bundle.getString(SocialAuthAdapter.PROVIDER);
String accessToken = socialAuthAdapter.getCurrentProvider().getAccessGrant().getKey();
// login to your server using accessToken, or make calls to google+ API using this token
}
@Override
public void onError(final SocialAuthError socialAuthError) {
}
@Override
public void onCancel() {
}
@Override
public void onBack() {
}
}
我也遇到登录问题,问题是redirect_uri
不正确。详细了解oauth2
here
答案 1 :(得分:-1)
使用Google和Facebook提供的API而不是SocialAuth。它们非常简单,易于集成。我浪费了很多时间使用这个SocialAuth并且不希望你们这样做。