【问题标题】:I can't load my web application into a webview我无法将我的 Web 应用程序加载到 Web 视图中
【发布时间】:2013-06-24 11:50:54
【问题描述】:

我已经开发了自己的 jQuery 移动项目并将其托管在一个网站上,它可以在这里找到:

http://thecoffeedrinker.site11.com/Youtube%20Theater/home.html

我可以通过我的移动浏览器使用这个应用程序;现在我想将它包装到一个 Android 应用程序中,以便在 Google Play 上发布它。所以我构建了一个简单的活动,包含在一个 webview 中,我在其中加载了 url:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_youtube_theater_wrapper);
    WebView appView = (WebView) findViewById(R.id.pageView);
    WebSettings webSettings = appView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    appView.loadUrl("http://thecoffeedrinker.site11.com/Youtube%20Theater/home.html");
}

问题是页面从不显示。我得到的只是 jQuery Mobile 未定义的进度条,就像加载需要永远一样。

有什么方法可以正常显示页面吗?

【问题讨论】:

  • 您是否在清单中添加了连接互联网的权限 - ?
  • 是的,当然,如果网站是 www.google.com,它就可以工作
  • 您在测试什么,它是否可以在该设备上的本机浏览器中运行?
  • 如果我使用本机浏览器,我可以访问该网站。现在我想要一个应用程序来包装它。
  • @DharmaDude 添加了一个答案,希望它能解决它:)

标签: android jquery-mobile android-webview


【解决方案1】:

将此添加到您的 webView:

webSettings.setDomStorageEnabled(true);

所以:

WebView appView = (WebView) findViewById(R.id.pageView);
WebSettings webSettings = appView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
appView.loadUrl("http://thecoffeedrinker.site11.com/Youtube%20Theater/home.html");

【讨论】:

  • 它有效!非常感谢!!
【解决方案2】:

在你的 java 文件中试试这个

    appView.loadUrl("http://thecoffeedrinker.site11.com/Youtube%20Theater/home.html");
    appView.setIntegerProperty("loadUrlTimeoutValue", 100000);

【讨论】:

  • webview 没有任何方法 "setIntegerProperty"
  • 试试 super.setIntegerProperty("loadUrlTimeoutValue", 100000);
猜你喜欢
  • 1970-01-01
  • 2014-06-06
  • 1970-01-01
  • 2021-12-16
  • 2012-03-28
  • 2011-07-18
  • 2016-04-13
  • 2015-05-20
  • 2023-04-05
相关资源
最近更新 更多