Android集成微信登录的步骤详解、遇到的问题,友盟分享遇到的问题

转载的问题:http://www.jb51.net/article/93706.htm

这篇文章给大家整理Android集成微信登录的详细步骤,通过文章整理的内容,大家只需要几行代码就可以实现微信登录的功能了,刚兴趣的朋友们下面来一起看看吧。欢迎提问~~~

点击打开查看微信登录步骤,以下是遇到的问题:

微信的:

1.数据的请求方式:get

2.获取授权口令其中一个是appid,一个是secret,其中后者在微信申请的时候出现一次需要记录下来,如果再想查看的话需要重置。

友盟分享的:

1.微信只有发布版本的,所以在测试的时候需要打包签名之后再测试

2.友盟微信分享成功后回到原APP出现白屏界面:WXEntryActivity需要继承WXCallbackActivity,需要导入

import com.umeng.socialize.weixin.view.WXCallbackActivity;

3.集成友盟分享以及单独的微信登录之后总是出现以下错误:"errcode": 40001, "errmsg": "invalid credential, access_token is invalid or not latest hint: [17ZG50664ent3]和"errcode": 40163。这两个错误都导致access_token的无效性,据官方code进行获取access_token的时候需要用到,code的超时时间为10分钟,一个code只能成功换取一次access_token即失效。code的临时性和一次保障了微信授权登录的安全性。

access_token是调用授权关系接口的调用凭证,由于access_token有效期(目前为2个小时)较短,当access_token超时后,可以使用refresh_token进行刷新,access_token刷新结果有两种:

  1. 若access_token已超时,那么进行refresh_token会获取一个新的access_token,新的超时时间;
  2. 若access_token未超时,那么进行refresh_token不会改变access_token,但超时时间会刷新,相当于续期access_token。

refresh_token拥有较长的有效期(30天),当refresh_token失效的后,需要用户重新授权。 

但是获取到的access_token、refresh_token都显示过期,原因:微信登录调用了微信该接口,友盟内部封装好的也调用了该接口,但两者的access_token是分开缓存的,所以导致登录时access_token、refresh_token的失效,解决方法,就是整个系统使用统一的获取access_token的方法,保证access_token的有效性。为了保证统一的token,用了友盟封装好的第三方登录。

4.提示缺少友盟XX包的时候,要去下载的sdk中复制

5.友盟的QQ登录,提示“非应用宝正式版本,应安装正式版”,错误码100044,需要到“QQ互联管理中心”关联软件,如果已经关联需要检查appid是否正确,以及签名是否字母都是小写并且没有冒号;如果还提示,则是测试账号有问题,要到腾讯开放平台查看测试要用的QQ登录账号,其在“应用调试者“,测试账号是原账号以及与其添加为好友的账号。

以下是官方给出的解释:

原因:签名问题导致。
解决方法:1、检查代码里配置的appid是否正确。2、修改签名。
签名修改操作步骤:对应移动应用的开发者可以进入QQ互联官网
https://connect.qq.com/index.html    =》应用管理=》移动应用=》关联腾讯开放平台,根据提示关联创建出现问题的移动应用,修改/添加相应的签名或者包名。
注:1、获取对应报错包名所用的签名信息进行修改或者添加。
2、若QQ互联里已有对应的移动应用,可直接改签名;若无对应移动应用,要先关联开放平台创建一个同APP ID的应用进行包名/签名修改或者添加
3、包名、签名需小写,去掉冒号 


你可能感兴趣的:(Android)