在我发布的应用中,内部链接似乎不适用于Android版本3.我的应用程序目标是Froyo.
该应用程序适用于大量的手机,但我的新Galaxy Tab无法处理内部链接!它可以在html页面中处理它们,即:
<a href="#faq">Go to faq</a> <!-- goes to FAQ link -->
Run Code Online (Sandbox Code Playgroud)
转到同一页面下方的标记:
<a name="faq" id="faq"></a>
Run Code Online (Sandbox Code Playgroud)
但是从另一个html文件,即索引页面,该链接不再适用于Honeycomb:
<a href="mainpage.html#faq">FAQ</a> <!-- goes to error page -->
Run Code Online (Sandbox Code Playgroud)
此外,如果我转到内部链接,并从那里按照指向另一个页面的链接,然后点击后退按钮,(它被覆盖以转到上一个webview页面)你得到相同的错误,即:
The webpage at file:///android_asset/folder/mainpage.html#faq might be temporarily down or it may have moved permanently to a new web address
Run Code Online (Sandbox Code Playgroud)
WTF!webview就在页面上,但是你在1秒后回击,它找不到它.它也不能从另一个html页面链接,但它在1.x,2.x中都可以正常工作,而不是3.1(还没试过3.0)
注意:我已经看到了这个几乎完全相同的问题: android_asset不能在Honeycomb上工作? 但是我的资产路径中没有空格.
我已尝试使用和不使用webclient,并尝试DOM和缓存设置无济于事.这是我目前在oncreate中的一个例子:
browser = new WebView(this);
// browser = (WebView) findViewById(R.id.webkit); // tried with XML and without
browser.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
browser.getSettings().setJavaScriptEnabled(true);
browser.getSettings().setPluginsEnabled(true);
// browser.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
// browser.getSettings().setUseWideViewPort(true);
browser.setBackgroundColor(Color.parseColor("#333333"));
browser.setInitialScale(1);
browser.getSettings().setBuiltInZoomControls(true);
final Activity MyActivity = …Run Code Online (Sandbox Code Playgroud)