起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1829|回复: 4

[结贴] Wex5 v3.8 com.justep.cordova.plugin.qq插件调用logout后ios不能再登录

[复制链接]

107

主题

385

帖子

1048

积分

金牌会员

Rank: 6Rank: 6

积分
1048
QQ
发表于 2018-2-27 17:07:14 | 显示全部楼层 |阅读模式
QQ插件(com.justep.cordova.plugin.qq),在ios下,调用ssologin登录后,调用logout。再调用ssologin后,会显示未安装QQ,就不能登录了,必须把app关闭再打开才行。但是在android下没有任何问题。

怎么解决?
发表于 2018-2-27 17:53:55 | 显示全部楼层
你好楼主,这个问题需要我在本地环境进行问题重现,所以会花费较长时间,请你耐心等待,我完成后会第一时间反馈结果,谢谢!2018022700017
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

107

主题

385

帖子

1048

积分

金牌会员

Rank: 6Rank: 6

积分
1048
QQ
 楼主| 发表于 2018-2-28 08:33:50 | 显示全部楼层
liangyongfei 发表于 2018-2-27 17:53
你好楼主,这个问题需要我在本地环境进行问题重现,所以会花费较长时间,请你耐心等待,我完成后会第一时间 ...

该问题我已经解决了,是插件的BUG,需要修改插件:
1.打开“Native\plugins\com.justep.cordova.plugin.qq\src\ios\QQ.h”文件,
加入属性:@property (strong, nonatomic) NSString * hasLogout;

2.打开“Native\plugins\com.justep.cordova.plugin.qq\src\ios\QQ.m”文件,
在“ssoLogin”方法中,加入:
    //判断是否已经登出,如果已经登出,需要重新创建对象
    if(self.hasLogout == @"yes"){
            self.tencentOAuth = [[TencentOAuth alloc] initWithAppId:_appId andDelegate:self];
            self.hasLogout = nil;
    }

在“logout”方法中,加入:
    //标记已经登出
    self.hasLogout = @"yes";


3.重新打包ipa包,完成。


-----------------------------------------------------------------------------------------------------------------------------------------------
另外该插件还有一个我问题,就是ios下调用“getUserInfo”方法,会报错。
解决法为:
打开“Native\plugins\com.justep.cordova.plugin.qq\www\qq.js”文件,将第15、16行替换为:
var paramObj = typeof param == "object" ? param : JSON.parse(param);
var url = "https://graph.qq.com/user/get_user_info?" + "access_token=" + self.token.access_token + "&" + "oauth_consumer_key=" + paramObj.qq_app_id + "&" + "openid="+ self.token.openid + "&format=json";



QQ.h文件中新增属性

QQ.h文件中新增属性

QQ.m文件中“ssologin”方法新增

QQ.m文件中“ssologin”方法新增

QQ.m文件中“logout”方法新增

QQ.m文件中“logout”方法新增

qq.js文件中“getUserInfo”方法新增

qq.js文件中“getUserInfo”方法新增
回复 支持 反对

使用道具 举报

3

主题

304

帖子

798

积分

高级会员

Rank: 4

积分
798
QQ
发表于 2018-2-28 11:17:54 | 显示全部楼层
liupeng9030 发表于 2018-2-28 08:33
该问题我已经解决了,是插件的BUG,需要修改插件:
1.打开“Native\plugins\com.justep.cordova.plugin.q ...

感谢!最近忙都忙不过来,一直没有时间看呢
回复 支持 反对

使用道具 举报

3

主题

304

帖子

798

积分

高级会员

Rank: 4

积分
798
QQ
发表于 2018-2-28 11:51:00 | 显示全部楼层
liupeng9030 发表于 2018-2-28 08:33
该问题我已经解决了,是插件的BUG,需要修改插件:
1.打开“Native\plugins\com.justep.cordova.plugin.q ...

QQ.h文件不用修改,把QQ.m文件修改为附件里面的文件就行,这样会比较优化一些。

QQ.m.zip

2.43 KB, 下载次数: 83

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-9-28 13:20 , Processed in 0.060974 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表