2017-06-06 123 views
0

我在本地主机上有我自己的网站。 当我从NetBeans运行JSP文件时,JSP页面正常工作。 也运行良好,当我从浏览器运行它。 我用一个WebView制作了一个简单的Android应用程序。 当我尝试加载CNN站点时,该应用程序也运行良好: 但是,当我用自己的URL替换URL时,出现了着名的 错误消息:HTTP状态404 - 未找到。 我知道URL也很好,因为我可以从浏览器运行它。 唯一的区别是我的URL位于本地主机上。 我使用Android模拟器Nexus_6_API_23 Google_API:5554 我在其他的人阅读回答了这个模拟器使用IP 10.0.2.2, 所以我已经改变了的WebView网址如下本地主机交互: 来自:http://localhost:8080/MissionWS/myLogin.jsp 为:http://10.0.2.2:8080/MissionsWS/myLogin.jsp无法加载WebView上的网址

这里是web视图android应用程序的代码: 任何人都可以帮忙吗?

public class MainActivity extends AppCompatActivity { 
private WebView mWebView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mWebView = (WebView) findViewById(R.id.mWebView); 
    mWebView.getSettings().setJavaScriptEnabled(true); 
    //mWebView.loadUrl("http://edition.cnn.com/"); 
    mWebView.loadUrl("http://10.0.2.2:8080/MissionsWS/myLogin.jsp"); 
    } 
} 
+0

您的本地网址无法从您的手机访问。在手机的浏览器中检查它是否会被加载。 –

+0

我该如何检查? – Drovo

+0

在您的手机浏览器中键入'http://10.0.2.2:8080/MissionsWS/myLogin.jsp'。 –

回答

0

您不能像这样访问本地主机。 我想你应该看看:How can I access my localhost from my Android device?

+0

感谢您的帮助。这是我发现:然而有一个更好的解决方案。您可以通过IP地址“10.0.2.2”访问主机。这是由Android团队以这种方式设计的。所以你的web服务器可以完美运行在本地主机上,从你的Android应用程序你可以通过“http://10.0.2.2:8080”访问它。 – Drovo

+0

我做了同样的,但它不起作用。如果我从浏览器运行网址,它就可以运行!任何其他建议? – Drovo

-1

这可能是无关的,但你没有webViewClient。添加myWebView.setWebViewClient(new MyWebViewClient());

+0

我做到了。仍然不起作用 – Drovo