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

QQ登录

只需一步,快速开始

查看: 3262|回复: 11

[处理中3] 使用二维码插件报错

[复制链接]

59

主题

274

帖子

1178

积分

金牌会员

Rank: 6Rank: 6

积分
1178
QQ
发表于 2017-10-18 14:46:27 | 显示全部楼层 |阅读模式
使用二维码插件的时候,第一次点击按钮,会跳转扫一扫,然后返回,既不走scuess的弹窗,也不走error的弹窗,再点击按钮,开始走error,弹窗报错信息为Scan is already in progress,关闭弹窗,再点击按钮,仍旧报这个错误。
使用二维码扫描的demo,运行是正常的,在我的页面的首页,也是正常的,但我用Justep.shell.showpage()跳转到第二个页面,在第二个页面点击按钮,调用扫一扫,就会出现上述的那些错误,请问这个是什么造成的呢?
发表于 2017-10-18 14:55:41 | 显示全部楼层
本地测试appLoader 运行
/UI2/portal/sample/index.w

打开扫一扫,运行是正常的啊!

Justep.shell.showpage()跳转到第二个页面,  请问你的门户页,确定是 定义 shellImp 打开的吧!

必须是单页应用才可以
http://docs.wex5.com/shellimpl/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

59

主题

274

帖子

1178

积分

金牌会员

Rank: 6Rank: 6

积分
1178
QQ
 楼主| 发表于 2017-10-18 15:03:03 | 显示全部楼层
liangyongfei 发表于 2017-10-18 14:55
本地测试appLoader 运行
/UI2/portal/sample/index.w

我本地打开扫一扫,也是正常的,第一页也是正常的,第二页出现的问题
index页嵌入的是login页,login能正确扫描,在login使用
justep.shell.showpage()跳转到第二个页面之后main页,之后,再在main页,调用,第一次调用,什么也不弹出,第二次调用,开始走error
回复 支持 反对

使用道具 举报

发表于 2017-10-18 15:14:47 | 显示全部楼层
wangjikuen 发表于 2017-10-18 15:03
我本地打开扫一扫,也是正常的,第一页也是正常的,第二页出现的问题
index页嵌入的是login页,login能正 ...

请问你是单页应用吗??  有没有定义shellImp
只有单页中打开的页面才可以正常调用
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

59

主题

274

帖子

1178

积分

金牌会员

Rank: 6Rank: 6

积分
1178
QQ
 楼主| 发表于 2017-10-19 14:06:15 | 显示全部楼层
liangyongfei 发表于 2017-10-18 15:14
请问你是单页应用吗??  有没有定义shellImp
只有单页中打开的页面才可以正常调用 ...

可能是我的某个库与cordova冲突了,我移除了一些不必要的库,问题排除了,那么有另一个问题,就是咱们的二维码扫描插件,是没有选择打开闪光灯与打开相册的选项的,这种事情,有解决方案吗?
回复 支持 反对

使用道具 举报

发表于 2017-10-19 14:57:15 | 显示全部楼层
wangjikuen 发表于 2017-10-19 14:06
可能是我的某个库与cordova冲突了,我移除了一些不必要的库,问题排除了,那么有另一个问题,就是咱们的 ...

目前没支持!想实现,只能自己修改插件,以及扫一扫页面
http://docs.wex5.com/wex5-app-question-list-2081

你好楼主,这个特性目前版本不支持,已作为产品功能建议提交(内部编号:2017101900006),感谢楼主的支持与配合。
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

59

主题

274

帖子

1178

积分

金牌会员

Rank: 6Rank: 6

积分
1178
QQ
 楼主| 发表于 2017-10-21 14:42:24 | 显示全部楼层
本帖最后由 wangjikuen 于 2017-10-21 14:47 编辑
liangyongfei 发表于 2017-10-19 14:57
目前没支持!想实现,只能自己修改插件,以及扫一扫页面
http://docs.wex5.com/wex5-app-question-list-2 ...

引发错误的原因已经找到了,是因为引用了融云的SDK,当没有打开引用的这个iframe的时候,整个程序都是正常的,一旦打开了这样页面,融云初始化成功之后,再调用扫描二维码,就会报 Scan is already in progress 这个错误,提示二维码扫描已经在工作中了。
但是我全局搜索这个字符串,却搜索不到,不知道当满足什么条件的情况下,才会到这发生错误回调。
推测应该是融云初始化的时候,改变了某个变量的值,而这个变量正是判断是否打开了二维码扫描的条件。
请问是否有这样的条件呢?在哪里能进行修改呢?
回复 支持 反对

使用道具 举报

发表于 2017-10-23 10:23:20 | 显示全部楼层
wangjikuen 发表于 2017-10-21 14:42
引发错误的原因已经找到了,是因为引用了融云的SDK,当没有打开引用的这个iframe的时候,整个程序都是正常 ...

这个需要看源码才能知道
你跟一下 Scan  方法,看下里面修改了哪些变量的值,是否有的变量和融云 冲突??
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

59

主题

274

帖子

1178

积分

金牌会员

Rank: 6Rank: 6

积分
1178
QQ
 楼主| 发表于 2017-10-23 20:18:14 | 显示全部楼层
liangyongfei 发表于 2017-10-23 10:23
这个需要看源码才能知道
你跟一下 Scan  方法,看下里面修改了哪些变量的值,是否有的变量和融云 冲突? ...

排查之后,发现的确有问题,但问题重点不在于融云sdk的哪方面(融云方面也有很多问题),重点在于,iframe不支持引入w文件,这个我是知道的,可是,我创建的是个html文件,里面放置数据组件等等我们常用的x5组件,使用的x5的方法,这种页面嵌入iframe,也会造成跟引入w文件一样的效果,就是报错
回复 支持 反对

使用道具 举报

发表于 2017-10-24 09:35:56 | 显示全部楼层
wangjikuen 发表于 2017-10-23 20:18
排查之后,发现的确有问题,但问题重点不在于融云sdk的哪方面(融云方面也有很多问题),重点在于,ifram ...

请问你是怎么引用w文件的??
如果是x5开发的功能里引用w文件可以使用windowContainer 组件!
如果引用整个x5开发的应用,需要引用门户页才可以的! 就是index.w

如果只是引用其中一个w页面的URL
应该是这样的!
http://docs.wex5.com/wex5-ui-question-list-2188/


你要保证这个URL,在浏览器里单独运行没问题!才可以放在iframe 中的!

不过放在iframe中是没有直接访问cordova插件的能力的!因为当前window对象没有cordova插件的方法!
如果iframe 的父里面有cordova插件的方法,调用父的window才可以!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-2 07:20 , Processed in 0.064118 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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