uni-app android端使用自定义基座时,webSocket连接成功后发送消息收不到

uni-app android端使用自定义基座时,webSocket连接成功后发送消息收不到

### 表格

| 类别           | 值         |
|----------------|------------|
| 产品分类       | uniapp/App |
| PC开发环境     | Windows    |
| PC开发环境版本 | win10      |
| HBuilderX类型  | 正式       |
| HBuilderX版本  | 3.2.3      |
| 手机系统       | Android    |
| 手机系统版本   | Android 9.0|
| 手机厂商       | 华为       |
| 手机机型       | 华为M5     |
| 页面类型       | vue        |
| 打包方式       | 云端       |
| 项目创建方式   | HBuilderX  |

### 操作步骤
- 以自定义基座方式运行,连接webSocket成功后发送消息,后台接收不到

### 预期结果
- 后台能接收到消息

### 实际结果
- 接收不到

### bug描述
- app android端使用自定义基座时,webSocket 连接成功后,发送消息收不到,但前端回调也是成功的,使用标准基座运行时可以正常发送;IOS端发送消息也正常

更多关于uni-app android端使用自定义基座时,webSocket连接成功后发送消息收不到的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app android端使用自定义基座时,webSocket连接成功后发送消息收不到的实战教程也可以访问 https://www.itying.com/category-93-b0.html


根据你的描述,问题出现在Android端使用自定义基座时WebSocket消息发送失败,而标准基座和iOS端均正常。这通常与自定义基座的配置或权限有关。

可能原因及解决方案:

  1. 网络权限问题
    自定义基座可能缺少必要的网络权限。请检查 manifest.json 中是否已配置以下权限:

    {
      "permissions": {
        "UniNView": {
          "permissions": [
            "<uses-permission android:name=\"android.permission.INTERNET\" />",
            "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\" />"
          ]
        }
      }
    }
    

    配置后需重新制作自定义基座。

  2. WebSocket协议兼容性
    Android 9.0默认限制明文流量,若未使用TLS(wss),需在 manifest.json 中添加网络安全性配置:

    {
      "app-plus": {
        "android": {
          "networkSecurity": {
            "cleartextTraffic": true
          }
        }
      }
    }
回到顶部