Android WebView loadUrl 是否支持 ipv6 地址

问题描述

Android WebView loadUrl 是否支持 ipv6 字面量?

我正在尝试在 WebView 小部件中获取 mjpg 流。

对我来说是这样的:
webView.loadUrl("http://192.168.8.173:9030/stream.mjpg")
工作正常。但是当我尝试时:
webView.loadUrl("http://[fe80::e749:69cc:3f0e:b0e3]:9030/stream.mjpg")
WebView 在应用程序的 WebView 小部件中显示 ERR_INVALID_ARGUMENT。
有什么办法可以让它工作吗?我需要它在最终版本的 ipv6 上工作。

我使用 RaspBerry Pi 和 raspicam 作为 mjpg 服务器。

Android 清单:

<uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"/>

    <application
        android:usesCleartextTraffic="true"
        ...

WebView 小部件代码

val webView = findViewById<WebView>(R.id.webStreamView)
webView.settings.loadWithOverviewmode = true
webView.settings.useWideViewPort = true
webView.settings.userAgentString = "Mozilla/5.0 (Linux; Android 10) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/89.0.4389.86 Mobile Safari/537.36" // still nothing
webView.loadUrl("http://[fe80::e749:69cc:3f0e:b0e3]:9030/stream.mjpg")

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)