我在以下链接中找到了一个示例应用
http://code.google.com/p/chaek/
该应用程序是一个epub阅读器,单片机库,其中已加载该书,它用于每页更改。该应用程序的主要部分基于java脚本代码。
当我在我的Android手机中运行代码时,它工作正常,电子书被加载,我能够明智地改变它,当我在Android 3.1的三星平板电脑中尝试应用程序时,这本书被加载但不是能够逐页改变它的章节。
当我尝试打印一些日志错误时,我只从我的平板电脑获得以下行
[METHOD] void openChapter(chapNo:1)
[CALLBACK_WV] void onPageStarted(view:android.webkit.WebView@40d32f58, url:file:///mnt/sdcard/gisbook/.9789026324710/OEBPS/html/, favicon:null)
[CALLBACK_WV] void onPageFinished(view:android.webkit.WebView@40d32f58, url:file:///mnt/sdcard/gisbook/.9789026324710/OEBPS/html/)
javascript:getTotalPageNum()
javascript:openPageByPercentage(0.0)
Uncaught ReferenceError: getTotalPageNum is not defined at null:1
Uncaught ReferenceError: openPageByPercentage is not defined at null:1
而从android手机中,以上几行如下
[CALLBACK_WV] void onPageStarted(view:android.webkit.WebView@44f4a130, url:file:///sdcard/.9789026324710/OEBPS/html/, favicon:null)
[CALLBACK_WV] void onPageFinished(view:android.webkit.WebView@44f4a130, url:file:///sdcard/.9789026324710/OEBPS/html/)
javascript:getTotalPageNum()
javascript:openPageByPercentage(0.0)
[BRIDGE] void setTotalPageNum(page:1)
[METHOD] void selectBookmark()
为什么android手机和平板电脑之间存在这样的差异,是webview在android平板电脑ie3.0及以上版本中的问题
我与代码作者分享了这个问题,他也无法对此有所了解。
当我在谷歌上搜索这个时,我遇到了很多程序员说在webview上工作的java脚本问题。我尝试了大部分答案,但没用。
任何人都可以解释我或弄清楚为什么会出现这样的错误......请
答案 0 :(得分:3)
我得到完全相同的错误,它只出现在Honeycomb和Ice Cream Sandwich上。在姜饼上它工作正常。
我解决这个问题的方法是使用“<script src=...></script>
”代替“<script src=.../>
”。我从来没有想过这会有所作为,但事实确实如此。似乎是一个webkit错误。
答案 1 :(得分:1)
scriptElement.setAttribute(“src”,“url('file:/// android_asset /”+ path +“')”);
需要替换为这个:
scriptElement.setAttribute(“src”,“file:/// android_asset /”+ path);