jquery-mobile加载到android WebView中

我无法将jquerymobile装饰的网页加载到Android WebView中。

考虑jquery移动演示站点: http : //jquerymobile.com/demos/1.0a4.1/

final WebView browser; browser = (WebView) findViewById(R.id.browser_webview); final WebSettings settings = browser.getSettings(); settings.setJavaScriptEnabled(true); settings.setAllowFileAccess(true); settings.setBuiltInZoomControls(false); settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); browser.loadUrl("http://jquerymobile.com/demos/1.0a4.1/); 

部署到Android设备(nexus one)这只是崩溃。 部署到模拟器日志报告

 INFO/HttpClientHelper(349): dispatch to 'http://jquerymobile.com/demos/1.0a4.1/' INFO/ActivityManager(51): Displayed activity com.xxx.android/.presentation.activities.SomeActivity: 4194 ms (total 4194 ms) DEBUG/dalvikvm(349): GC freed 3005 objects / 220168 bytes in 76ms *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** Build fingerprint: 'generic/sdk/generic/:2.1-update1/ECLAIR/35983:eng/test-keys' pid: 349, tid: 361 >>> com.retrieve.android <<< signal 11 (SIGSEGV), fault addr 00000004 r0 004bf6f1 r1 00000014 r2 00000001 r3 004bf63c r4 00000004 r5 004bf700 r6 00000000 r7 00000000 r8 4517ecf8 r9 426bdf1c 10 00000354 fp 426bdf18 ip ad080090 sp 4517d784 lr aa17a2c7 pc aa17e966 cpsr 00000030 #00 pc 0017e966 /system/lib/libwebcore.so #01 lr aa17a2c7 /system/lib/libwebcore.so code around pc: aa17e954 e69eda00 f7ffa813 6f22fb91 b0216ea6 aa17e964 59a00094 1c27bdf0 683b378c 22019903 aa17e974 18471ad0 971b2000 2f00901a da009708 code around lr: aa17a2b4 28004798 1c28d00f fad0f7c4 f0041c28 aa17a2c4 9b05f9b1 181f9903 29009705 1c28d00d aa17a2d4 fc68f003 6828e009 680230ac 47901c28 stack: 4517d744 004bf7a0 [heap] 4517d748 0034a368 [heap] 4517d74c aa17d36b /system/lib/libwebcore.so 4517d750 00000000 4517d754 00000000 4517d758 004bf700 [heap] 4517d75c 004bf7a0 [heap] 4517d760 004bf700 [heap] 4517d764 00000000 4517d768 aa17cda5 /system/lib/libwebcore.so 4517d76c aa17f2f9 /system/lib/libwebcore.so 4517d770 00000000 4517d774 00000000 4517d778 df002777 4517d77c e3a070ad 4517d780 004bf63c [heap] #00 4517d784 004bf63c [heap] 4517d788 004bf700 [heap] 4517d78c 00000000 4517d790 00000000 4517d794 aa17a2c7 /system/lib/libwebcore.so 4517d798 0030eb60 [heap] 4517d79c 00000000 4517d7a0 0034a368 [heap] 4517d7a4 00000000 4517d7a8 00000000 4517d7ac 00000000 4517d7b0 0030eb60 [heap] 4517d7b4 4517d898 4517d7b8 00000000 4517d7bc 004bf63c [heap] 4517d7c0 00000000 4517d7c4 00000003 4517d7c8 0000024e DEBUG/Zygote(29): Process 349 terminated by signal (11) INFO/WindowManager(51): WIN DEATH: Window{43d2e3a8 com.xxx.android/com.xxx.android.presentation.activities.SActivity paused=false} 

通过用jquery-1.5.2.min.js替换jquery-1.5.2.min.js ,我的大多数问题都消失了。

通过用绝对路径替换链接和脚本资源的相对路径来解决我的其余问题。

为什么不查看负责加载其Android Web视图的DroidGap类的phonegap源文件? 很多人经常使用jquery mobile,以及其他框架,在android上使用phonegap。 我相信你会在那里找到你想要的东西:

https://github.com/sintaxi/phonegap/blob/master/android/framework/src/com/phonegap/DroidGap.java

要查看加载jQuery Mobile演示站点的PhoneGap示例,请查看http://www.mobiledevelopersolutions.com/home/start/included-demo-apps