安卓Webview无法连接本地IP地址。

4

我在一个简单的安卓应用中有一个webView类。我正在尝试让它加载一个托管在我的本地网络服务器上的网页,但无法连接。

WebView webview = new WebView(this);
setContentView(webview);
webview.loadUrl("192.168.1.104");

webView 显示“网页不可用”

在任何普通浏览器和移动端浏览器中,我都能连接到 192.168.1.104。但当我将 192.168.1.104 替换为 http://example.com时,它可以运行。


2
我假设你的手机已经连接到同一个网络,尽管我能想到的只是将协议添加到你的URL“http://192.168.1.104”。也许这会有所帮助。 - harism
是的,手机和192.168.1.104处于同一网络中。当我在本地URL前添加http://时,Webview会在我的手机上启动一个浏览器,并打开该地址。 - Francis Snipe
你运行的Web应用程序的端口号在哪里?Logcat输出是什么?在你的清单中是否授予了Internet权限?你的模拟器浏览器是否启动了任何其他网站? - Parijat Bose
2个回答

4
你是否在AndroidManifest.xml文件中添加了互联网权限?
<uses-permission android:name="android.permission.INTERNET"/> 

3
只需添加以下代码即可在本地显示您的页面:
    public void onCreate(Bundle savedInstanceState) {
        Log.i(TAG, "Entering onCreate");
        super.onCreate(savedInstanceState);
        setContentView(R.layout.webview);

        mWebView = (WebView)findViewById(R.id.webview);
        mWebView.clearCache(true);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.loadUrl("http://10.0.2.2:8080/SampleWebServer/Welcome.html");
        Log.i(TAG,"Exiting onCreate");
}    
这就是它!

那就是它! - StackExploded

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接