微信扫码登录SDK接入流程(android)

记录一下微信扫码登录流程:

1.获取token;

2.获取ticket;

3.拿到ticket,进行拼接,在进行SHA1,生成签名,再

IDiffDevOAuth.auth(...)  这里要传入OAuthListener

4.在OAuthListener的回调方法onAuthGotQrcode里拿到byte[ ]格式的二维码图片

5.将byte[]格式图片转成bitmap,并显示在imageView

 public static Bitmap getPicFromBytes(byte[] bytes, BitmapFactory.Options opts) {
        if (bytes != null)
            if (opts != null)
                return BitmapFactory.decodeByteArray(bytes, 0, bytes.length, opts);
            else
                return BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
        return null;
    }

6.有了二维码就可以用手机微信扫描这个二维码,进行验证登录了

7.到此整个流程就走完了

补充贴一下上面要请求的接口代码:

  @GET("token")
    Observable<TokenBean> getWxCodeToken(@Query("grant_type") String grant_type  ,@Query("appid") String appid ,@Query("secret") String secret  );

    @GET("ticket/getticket")
    Observable<TicketBean> getWxCodeTicket(@Query("access_token") String  access_token , @Query("type") String  type);

    @GET("oauth2/access_token")
    Observable<WXAuthTokenBean> doGetAuthTokenByCode_rx(@Query("appid") String  appid , @Query("secret") String  secret, @Query("code") String  code, @Query("grant_type") String  grant_type);

    @GET("userinfo")
    Observable<WXAuthUserInfoBean> reqWXAuthUserInfoByCode_rx(@Query("access_token") String  access_token , @Query("openid") String  openid);

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值