Sri*_*san 5 android android-intent android-layout android-fragments android-activity
我必须在我的android应用程序中使用facebook和google plus实现signin.成功实现了facebook,如下图所示.
但是,当我实施登录谷歌加上它显示像谷歌加图像链接
请有人帮我实现同样的Facebook登录,以便在Android中使用Google plus登录.这样用户就可以输入他更喜欢登录Google的任何Gmail帐户.
我正在使用SocialAuth库,它支持许多社交网络,包括Facebook和Google+。
注意:如果需要,可以稍后提供如何使用此库(Facebook、Google+)登录相应社交网络的代码示例。
更新:
1)客户端ID存储在oauth_consumer.properties文件中(将其放入assets文件夹中)
#facebook
graph.facebook.com.consumer_key = YOUR_KEY
graph.facebook.com.consumer_secret = YOUR_SECRET
#Google Plus
googleapis.com.consumer_key=YOUR_KEY.apps.googleusercontent.com
googleapis.com.consumer_secret=YOUR_SECRET
Run Code Online (Sandbox Code Playgroud)
2)Google+需要重定向 url。在项目的 google console 中指定重定向 url,并SocialAdapter在初始化时添加它。
...
socialAuthAdapter = new SocialAuthAdapter(new ResponseListener(), null);
setAuthProviders();
...
private void setAuthProviders() {
socialAuthAdapter.addProvider(SocialAuthAdapter.Provider.FACEBOOK, R.drawable.facbook);
socialAuthAdapter.addProvider(SocialAuthAdapter.Provider.GOOGLEPLUS, R.drawable.google);
socialAuthAdapter.addCallBack(SocialAuthAdapter.Provider.GOOGLEPLUS, GOOGLE_PLUS_CALLBACK_URL);
//urn:ietf:wg:oauth:2.0:oob - if you set this url, than accessToken received from social network should be handled manually (web page (in WebView) with login response from Google+ will contain in header or in response link accessToken, and you will get it manually by parsing that links). not the best way.
socialAuthAdapter.enable(social);
}
Run Code Online (Sandbox Code Playgroud)
ResponseListener3)登录流程完成后,您将获得accessToken :
private class ResponseListener implements DialogListener {
@Override
public void onComplete(Bundle bundle) {
final String providerName = bundle.getString(SocialAuthAdapter.PROVIDER);
SocialNetwork network = SocialNetwork.valueOf(providerName);
String accessToken = socialAuthAdapter.getCurrentProvider().getAccessGrant().getKey();
}
@Override
public void onError(final SocialAuthError socialAuthError) {
}
@Override
public void onCancel() {
}
@Override
public void onBack() {
}
}
Run Code Online (Sandbox Code Playgroud)
您可以在此处的“形成身份验证请求的 URL”部分中阅读有关重定向 url 的更多信息。
| 归档时间: |
|
| 查看次数: |
218 次 |
| 最近记录: |