素白年代
素白年代
  • 发布:2018-12-25 16:37
  • 更新:2018-12-25 17:06
  • 阅读:1303

通过HBuilder新建web2App项目,注册广播监听不执行?需要引用5+api吗?

分类:HBuilder

2018-12-25 16:37 负责人:无 分享
已邀请:
回梦無痕

回梦無痕 - 暂停服务

有些NJS代码无法在远程页面执行,只能通过本地页执行。

  • 素白年代 (作者)

    我是web项目,这些NJS代码是写在web项目里的

    2018-12-25 16:52

  • 回梦無痕

    @592217037@qq.com:wap2App项目也可以在本地页运行代码的,本地页把运行结果传给远程页就可以实现效果了。

    2018-12-25 16:54

  • 素白年代 (作者)

    回复 回梦無痕:哦,我是jsp写的web项目,用HBuilder转成web2App项目,无法注册广播监听,是不支持jsp调用5+api,还是我写错了?

    2018-12-25 19:57

  • 回梦無痕

    @592217037@qq.com:你先确定你这段H5+代码能在移动APP项目中冷正常运行,如果移动APP项目中冷运行,wap2app不能,说明这段代码不能在远程页面运行,需要在wap2app中的本地页运行

    2018-12-25 20:15

  • 素白年代 (作者)

    回复 回梦無痕:嗯,我试过了,我用html页面能够执行,用jsp页面不会执行,所以我在想是不是jsp页面调用不了5+api

    2018-12-26 08:28

  • 回梦無痕

    @592217037@qq.com:说明这段代码不能在远程页面(所有用网址加载的页面)运行,需要在wap2app中的本地页运行

    2018-12-26 08:36

  • 素白年代 (作者)

    回复 回梦無痕:不是,我用html页面写的也是通过网址加载的,它能运行。而jsp页面就不行

    2018-12-26 08:45

  • 回梦無痕

    @592217037@qq.com:jsp到了webview也是渲染为HTML的,所以后端什么语言在webview端无区别,应该是你的代码写错了。

    2018-12-26 09:03

  • 素白年代 (作者)

    回复 回梦無痕:调用5+api用的是同一段代码,html能够注册监听,jsp没执行。我再看看后端的jsp吧

    2018-12-26 09:37

  • 回梦無痕

    回复 素白年代:h5+api代码是要等待webview端plus事件才能有效执行,可能你的次序搞错了。代码中只留document.addEventListener('plusready', plusReady, false);就可以了,不需要判断window.plus。

    2018-12-26 09:42

  • 素白年代 (作者)

    回复 回梦無痕:一开始就是没判断window.plus,不行

    2018-12-26 10:31

  • 回梦無痕

    回复 素白年代:监听plusready就可以了,我这边做的所有APP都没有判断window.plus的。判断window.plus主要是想嗲吗执行时间早一点而已,基本是ios才有用的,安卓的的plus加载时间比ios延迟多了,所以安卓判断window.plus没什么用,为了统一都监听plusready会比较好写。

    2018-12-26 10:40

  • 素白年代 (作者)

    回复 回梦無痕:后来解决了,原来是后端人员是在iframe里面使用,而5+api注入不到iframe里,导致window.plus对象获取不到

    2019-01-23 10:46

该问题目前已经被锁定, 无法添加新回复