这是 Android 应用程序的主屏幕。一切都在 WebView 中呈现。
当我点击左下角的按钮时,此叠加层会打开,其内容会动态添加到其中。
当我点击其中一个图标时,它应该被添加到左侧的栏中。它确实如此。
但是,当我点击另一个图标时,什么也没有发生。它应该调用的函数没有运行(我alert ()
在它的开头放了一个检查)。
当我关闭叠加层(左上角的按钮)并再次打开它(左下角)时,我可以添加另一个图标。但是再一次,直到覆盖层关闭并再次打开,下一个事件才会触发。
我不知道解决这个问题有多容易,因为我不确定是否每个人都遇到过这个问题。我(在运行 Android 4.0.4 的三星 GT-P6200 上)可以。其他人也向我抱怨过这件事。然而,在 SDK 中包含的 Android 模拟器中,Android 4.1 和 4.1 似乎没有发生这种情况。好像是4.0的问题。
叠加层中的图标如下所示;<div class="appLauncher" onClick="launchApp (' + i + ')"><img src="data:image/png;base64,' + base64 + '" alt="[~]" /><br /><span>' + label + '</span></div>
如果有什么不同,我会使用 jQuery 来处理 DOM。
function launchApp (i)
{
// Putting an alert () here indicates that the function doesn't get called, because no alert box appears on the screen //
try
{
if (! launcherEdit)
{
android.launchAppFromList (i);
}
else
{
addAppToLauncherFromList (i); // This is what should happen //
}
}
catch (ex)
{
handleException (ex);
}
}
应用程序本身可以在这里找到;https://play.google.com/store/apps/details?id=be.robinj.ubuntu
的源代码可以在这里找到;http://bazaar.launchpad.net/~robinj/be.robinj.ubuntu/trunk/files
这是 Javascript 文件;http://bazaar.launchpad.net/~robinj/be.robinj.ubuntu/trunk/view/head:/assets/script.js
并且请,请不要在没有正确理解实际问题的情况下将其关闭为“完全重复” ,就像以前发生过很多次一样。
这种血腥的混乱似乎只存在于 Android 4.0.4 及更低版本(或该版本号附近的某个地方)。只有完全忽略了 appLaunchers 的点击。
我开始在这里看到某种联系......在将项目添加到左侧栏的 jQuery 动画播放后,它总是开始失败。这开始看起来可疑地像一个重绘问题......
不确定这是否相关,但看到它在我的控制台中弹出......
02-12 14:30:22.650: E/dalvikvm(3936): JNI ERROR (app bug): attempt to use stale global reference 0xe
02-12 14:30:22.650: E/dalvikvm(3936): VM aborting
02-12 14:30:22.650: A/libc(3936): Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1)