添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

android webview websocket example

好的,这里提供一个 Android WebView 使用 WebSocket 的示例代码。

首先,需要在 AndroidManifest.xml 文件中添加网络权限:

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

然后,创建一个布局文件,添加一个 WebView 控件:

<WebView
    android:id="@+id/web_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

接下来,在 Activity 或 Fragment 中,可以使用如下代码启用 WebSocket:

import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
    private WebView mWebView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mWebView = findViewById(R.id.web_view);
        mWebView.setWebViewClient(new WebViewClient());
        mWebView.setWebChromeClient(new WebChromeClient());
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.loadUrl("file:///android_asset/index.html");

其中,file:///android_asset/index.html 是一个包含 WebSocket 连接代码的 HTML 文件。在 HTML 文件中,可以使用如下代码建立 WebSocket 连接:

<!DOCTYPE html>
    <title>WebSocket Example</title>
</head>
    <script>
        var ws = new WebSocket("ws://echo.websocket.org");
        ws.onopen = function() {
            console.log("WebSocket connection established");
        ws.onmessage = function(event) {
            console.log("Received message: " + event.data);
        ws.onclose = function() {
            console.log("WebSocket connection closed");
    </script>
</body>
</html>

在这个例子中,WebSocket 连接到了 echo.websocket.org,当连接成功后,会在控制台输出一条消息。当收到服务器发送的消息时,也会在控制台输出。

需要注意的是,WebSocket 是一个异步的协议,因此在建立连接后,可以使用回调函数来处理事件。在这个例子中,使用了 onopen、onmessage 和 onclose 回调函数来处理 WebSocket 的连接建立、消息接收和连接关闭事件。

希望这个示例代码能够帮到你。如果你有任何疑问,请继续提问。

  •