请选择 进入手机版 | 继续访问电脑版
帖子
帖子
用户
博客
课程
12下一页
返回列表 发新帖
显示全部楼层
1
帖子
0
勋章
2
Y币

[App引擎] addEventListener捕获物理键,本地真机调试成功,云编译后无效

[复制链接]
发表于 2017-12-13 10:09:45
本帖最后由 csdudu 于 2018-1-19 16:26 编辑
  1. <script src="script/api.js"></script>
  2. <script>
  3. apiready = function () {
  4.   console.log(api);
  5.   api.addEventListener({
  6.       name: "keyback"
  7.   }, function(ret, err){
  8.       alert('按了退出键');
  9.       return false
  10.   });

  11.    api.addEventListener({
  12.         name: 'volumeup' // 设备音量加键被点击事件,仅 Android 平台有效
  13.     }, function(ret, err) {
  14.         alert('!!按了音量加键');
  15.     });
  16. }
复制代码
主要代码如上。本地wifi真机调试,按这两个物理键,都能成功弹窗,但是云编译后就不行了,似乎根本就没捕获到按键一样。Api对象是正常的,用vconsole.js查看,能看到。
求指点!

---------------------------------------------------
走了无数弯路,做了许多测试,前天才找到了问题的答案!因为我在整个调用体系中,调用了两次apiready,后者(在index.html中)定义自然覆盖了前者(其它页面中)。因此就出现,在单页中测试没问题,跟index.html一起打包,就失效的问题。-------怪自己对于打包的架构不熟悉,使用了apicloud新建时推荐的index.html+Frame页结构,其实没有任何必要使用frame。

其实下面的答主告诉我要注意frame结构,我也轻率的回答了没有使用frame,可是没想到,我最顶层的结构就是一个Frame---这真是太讽刺了。我还以为那是apicloud钦定的顶层结构,根本就没敢去怀疑它!其实根本就不需要用Frame!
4
帖子
0
勋章
3524
Y币
你这些代码都是写在win上的吗
1
帖子
0
勋章
2
Y币
piewun949116 发表于 2017-12-13 10:20
你这些代码都是写在win上的吗

是的。apicloud-studio2+win10
34
帖子
5
勋章
2990
Y币
本帖最后由 杨愿 于 2017-12-13 16:03 编辑

volumeup


设备音量加键被点击事件,仅 Android 平台有效

该事件必须在 Window 中注册才有效,Frame 中注册无效,并且只在当前屏幕上的 window 才能收到回调。
  1. api.addEventListener({
  2.     name: 'volumeup'
  3. }, function(ret, err) {
  4.     alert('按了音量加键');
  5. });
复制代码


console.log(api);还有我很好奇这段代码。

1
帖子
0
勋章
2
Y币

没用到Frame,只针对安卓平台。还是没听明白您的意思。
34
帖子
5
勋章
2990
Y币
csdudu 发表于 2017-12-13 16:06
没用到Frame,只针对安卓平台。还是没听明白您的意思。

QQ截图20171213163933.png 我试了一下,没问题
1
帖子
0
勋章
2
Y币
杨愿 发表于 2017-12-13 16:39
我试了一下,没问题

请问你是做了云编译的结果么?能否把apk共享给我试下?我在本地真机调试也没问题,就是云编译以后就不行了。
177
帖子
0
勋章
1万+
Y币
csdudu 发表于 2017-12-13 17:55
请问你是做了云编译的结果么?能否把apk共享给我试下?我在本地真机调试也没问题,就是云编译以后就不行了 ...

有没有提交代码到云端,再云编译?
1
帖子
0
勋章
2
Y币
gigie 发表于 2017-12-13 17:59
有没有提交代码到云端,再云编译?

肯定提交了,为了避免犯错,我专门写了一个测试文件,并做了标记。
34
帖子
5
勋章
2990
Y币
csdudu 发表于 2017-12-13 17:55
请问你是做了云编译的结果么?能否把apk共享给我试下?我在本地真机调试也没问题,就是云编译以后就不行了 ...

云编译之后的。
12下一页
您需要登录后才可以回帖 登录

本版积分规则