0

我无法让任何工作灯/dojo 应用程序在三星 Galaxy S3 上运行。我在 Worklight Studio v6 中组装了一个简单的 Worklight 应用程序。它有 2 个视图。第一个视图有一个文本框和一个按钮,第二个视图有一个文本框。

<div data-dojo-type="dojox.mobile.ScrollableView" id="view0"
    data-dojo-props="selected:true">
    <div data-dojo-type="dojox.mobile.Heading"
        data-dojo-props="label:'Page 0'"></div>
    <input data-dojo-type="dojox.mobile.TextBox">
    <button data-dojo-type="dojox.mobile.Button" id="theButton">Page
        1</button>
</div>
<div data-dojo-type="dojox.mobile.View" id="view1">
    <div data-dojo-type="dojox.mobile.Heading"
        data-dojo-props="label:'Page 1',back:'back',moveTo:'view0'"></div>
    <input data-dojo-type="dojox.mobile.TextBox">
</div>

view0 上的按钮连接到转换到 view1 的处理程序,并且 view1 上的标题有一个后退按钮。

        dijit.registry.byId("theButton").on("click", function() {
            dijit.registry.byId("view0").performTransition("view1", 1, "slide");
        });

这就是应用程序的全部内容。它适用于我尝试过的所有地方(模拟器和摩托罗拉 Droid 4) ,除了Galaxy S3。在 Galaxy 上,dojo 解析器似乎失败了。页面是白色的,两个视图中的文本框和按钮都显示在初始页面上,但是没有标题,当您单击按钮时没有任何反应。摩托罗拉(可以运行)和三星(不能运行)都运行 Android 4.1.2。

在查看三星的 LogCat 时,我看到了一些在其他平台上看不到的错误:

08-01 16:51:42.752: D/SimpleTest(26821): before: app init onSuccess
08-01 16:51:42.782: E/SpannableStringBuilder(26821): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
08-01 16:51:42.782: E/SpannableStringBuilder(26821): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
08-01 16:51:42.782: D/SimpleTest(26821): after: app init onSuccess
08-01 16:51:42.782: D/SimpleTest(26821): added onPause event handler 
08-01 16:51:42.782: D/SimpleTest(26821): wlclient init success
08-01 16:51:44.464: D/DroidGap(26821): onMessage(spinner,stop)
08-01 16:52:07.038: D/CordovaLog(26821): Error: scriptError
08-01 16:52:07.038: E/Web Console(26821): Error: scriptError:21
08-01 16:52:07.088: D/CordovaLog(26821): Error: scriptError
08-01 16:52:07.088: E/Web Console(26821): Error: scriptError:21

谷歌搜索,我发现对 SPAN_EXCLUSIVE_EXCLUSIVE 错误的引用。它似乎与 Swype 或 SwiftKey 键盘或三星 TouchWiz 相关联。大多数对这个问题的引用来自于做 Android 原生开发的人,而不是混合应用程序开发,除了禁用键盘之外,我没有找到很多答案。我尝试禁用 Swype 键盘,但这并没有改变任何东西。有没有其他人看到这个问题?有没有人在 Galaxy S3 上运行过 Worklight 6 dojo 应用程序?

4

2 回答 2

1

https://dl.dropboxusercontent.com/u/40842201/Worklight%20Samsung%20fix/mobile-ui-layer.js

尝试在您的 www/layers 文件夹中使用此“mobile-ui-layer.js”。只需复制文件并重新编译应用程序。

该修复基于以下问题:

于 2013-10-16T10:40:31.237 回答
0

这将在近期的 Worklight 6.0 版本中得到修复。

同时,请参阅以下有关同一主题的 Stackoverflow 问题:

于 2013-08-02T03:08:13.080 回答