umeng第三方登陆授权 getPlatformInfo 无法获取 access_token

来源:互联网 发布:一键安装java环境 编辑:程序博客网 时间:2024/06/07 05:56

umeng第三方登陆授权获取access_token

本文章是 针对 umeng sdk 4.3 . 5.0已经使用了新的方法所以不存在问题

umeng的文档中介绍的是

“ 2.3 获取accesstoken及用户资料 ”

umeng文档说的是

UMSocialService.getPlatformInfo(Context context , SHARE_MEDIA platform , UMDataListener listener) 

通过这个方法获取 access_token ,但是发现里面只有用户信息,和其他的字段 并没有 access_token

通过微信 或者微博的官方的sdk方法获取是完全没有问题的。 这说明umeng分装的时候 裁剪掉了。

后来才知道

原因

其实umeng在这一步里面已经获得了 access_token

UMSocialService.doOauthVerify(Context context , SHARE_MEDIA platform , UMAuthListener listener)

完整方法

mController.doOauthVerify(MainActivity.this, SHARE_MEDIA.SINA,new UMAuthListener() {            @Override            public void onError(SocializeException e, SHARE_MEDIA platform) {            }            @Override            public void onComplete(Bundle value, SHARE_MEDIA platform) {                if (value != null && !TextUtils.isEmpty(value.getString("uid"))) {                    Toast.makeText(MainActivity.this, "授权成功.",                      Toast.LENGTH_SHORT).show();                } else {                    Toast.makeText(MainActivity.this, "授权失败",                       Toast.LENGTH_SHORT).show();                }            }            @Override            public void onCancel(SHARE_MEDIA platform) {}            @Override            public void onStart(SHARE_MEDIA platform) {}});

在 onComplete 中 bundle 已经包含了 access_token 可以试着打印出来看一下。
就可以知道了。 所以这是umeng 文档出现的问题,描述有问题。

0 0
原创粉丝点击