】 如果集成友盟,WXEntryActivity中就不要自己做处理了,集成的WXCallbackActivity中会进行分发回调,要实现
onCreate方法 调用super.onCreate()即可;
1 在回调函数里区分分享还是登陆
public void onResp(BaseResp resp) {
switch (resp.errCode) {
case BaseResp.ErrCode.ERR_OK:
if(ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX==resp.getType()){//分享
MyToastUtil.ShowToast(getApplicationContext(), "分享成功");
}
//目前没有找到登陆的id 这是微信的文档
http://open.weixin.qq.com/zh_CN/htmledition/res/dev/document/sdk/wp8/class_micro_msg_1_1sdk_1_1_constants_a_p_i.html#a04572a149e3f69d571e31528f8b34062
2 登录授权页取消授权后 不能正常登录
描述: 第一次调起授权页 如果取消授权 再次点击登录,能够调起授权页,但是授权后没有响应。
先说一下自己写的登陆逻辑: 在微信授权后,在回调里发送广播,进行下一步的处理,广播接收封装到了一个类里 ,接收到广播后在进行处理。
现在分析原因:
第一次点击微信登陆 实例化了WeixinLogin类,在这个类里注册了一个广播。然后调起授权页,取消授权,再次点击微信登陆 这时又实例化了WeixinLogin类,又注册了一个广播 。
当回调页发送广播的时候 就会有多个接受者 导致多次请求微信接口而发生代码错乱
解决办法: 不要每次点击登录 就实例化一次WeixinLogin类
调用wxapi.sendReq接口,返回true,但微信客户端并未启动,请检查以下几项:
1)微信是否安装
2)调用时的Apk包名和签名是否与开放平台填写的一致,签名请使用该工具:点击下载,常发生在安装了debug版本又安装release版本情况,确定包名签名后卸载微信重装或者清除微信数据再做测试
3)检查发送时的缩略图大小是否超过32k