海外sdk开发篇之安卓使用苹果登录

比较奇怪的一个需求,而且也找不到啥资料

大致上是webview打开一个苹果登录的授权链接,然后会重定向到一个网址,获取到登录token

下面开整

1.

url:https://appleid.apple.com/auth/authorize?client_id=%s&redirect_uri=%s&response_type=code id_token

这里需要补充client id(xxx.xxx.xxxx.server类似这种),和redirect uri(https://www.xxx.com/apple_return_url类似这种),这个ios后台应该可以设置

2.

通过webview打开这个链接,并且在overrideurl的接口里判断url是不是1中redirect uri开头的链接,如果是的话可以从中获取到id_token,发给服务端校验登录

webView.loadUrl(1中的url);

webView.setWebViewClient(new WebViewClient(){

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

if (!TextUtils.isEmpty(url) && url.startsWith(1中的redirect uri)){

    Uri callback = Uri.parse(url);

    String code = callback.getQueryParameter("code");

    String id_token = callback.getQueryParameter("id_token");

    }

    return true;

});

服务端可以根据id_token去苹果那校验登录,ok的话继续后续的登录流程

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容