我正在尝试使用 where2getit 创建概念验证,并且我有以下 Wafflehouse 的示例 URL
http://hosted.where2getit.com/wafflehouse/indexnew.html
当我在三种不同的设备模式下查看时:
- 桌面浏览器(经过 Safari 或 Chrome 测试)
- Android 移动浏览器(运行 Jelly Bean 的 Azpen/Acer 迷你平板电脑)
- 注意重定向到移动......
- WebView 中的 Android Native App 作为 URL 或数据;仅限 URL,带 src 的 iFrame
我得到的图像如下:
1.
2.
3.
HomeActivity 中的代码是:
public class HomeActivity extends Activity {
private static final String TAG = "HomeActivity";
private static final String URL_LOADING = "http://mobile.where2getit.com/wafflehouse/indexnew.html";
private static final String HTML_BODY = "<html>" + "<body>"
+ "<iframe id='content' src='http://hosted.where2getit.com/wafflehouse/indexnew.html' margin='5%' width='80%' height='80%'/>"
+ "</body>" + "</html>";
private static final String MIME_TYPE = "text/html";
private static final String ENCODING = "utf-8";
private WebView mWebView;
private MdWebChromeClient chromeClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
mWebView = (WebView) findViewById(R.id.webWhere2GetItIFrame);
chromeClient = new MdWebChromeClient();
mWebView.setWebChromeClient(chromeClient);
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
mWebView.getSettings().setAppCacheEnabled(false);
mWebView.clearCache(true);
mWebView.getSettings().setBuiltInZoomControls(true);
mWebView.getSettings().setJavaScriptEnabled(true);
// mWebView.addJavascriptInterface(new MdJsObject(), "injectedObject");
mWebView.loadDataWithBaseURL("http://hosted.where2getit.com", HTML_BODY, MIME_TYPE, ENCODING, "");
// mWebView.loadUrl(URL_LOADING);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.home, menu);
return true;
}
final class ClickOnCallbackScript {
private View mHandler;
ClickOnCallbackScript() {
}
public void clickOnAndroid() {
mHandler.post(new Runnable() {
public void run() {
Log.d(TAG, "\t\tC L I C K . . .");
// mWebView.loadUrl("http://www.mobidawg.mobi/m/products/wethepeople/index.html");
}
});
}
}
}
结语
我认为问题可能与在 WebView 中正确使用 IFRAME 有关;或我不知道如何检测和处理的回调。我也相信解决方案很简单,其他人已经解决了。
如果你能提供一些想法供讨论,那么答案很可能会出现。