uni-app io.dcloud.android.content.BroadcastReceiver

uni-app io.dcloud.android.content.BroadcastReceiver

类别 信息
产品分类 uniapp/App
PC开发环境 Windows
PC版本号 1
HBuilderX类型 正式
HBuilderX版本 3.1.19
手机系统 Android
手机系统版本 Android 10
手机厂商 华为
手机机型 huaweimate9
页面类型 vue
打包方式 离线
项目创建方式 HBuilderX

示例代码:

//蓝牙断开监听  
var btsFindReceiver = plus.android.implements("io.dcloud.android.content.BroadcastReceiver", {  
    "onReceive": function (context, intent) {  
        plus.android.importClass(context);  
        plus.android.importClass(intent);  
        var action = intent.getAction();  
        console.log(JSON.stringify(action))  
    }  
});  
var activity = plus.android.runtimeMainActivity(); //启用原生activity  
var IntentFilter = plus.android.importClass('android.content.IntentFilter');  
var filter = new IntentFilter();  
filter.addAction(BluetoothAdapter.ACTION_ACL_DISCONNECTED);  
activity.registerReceiver(btsFindReceiver, filter);

操作步骤:

  • 能接收蓝牙关闭的广播,但是蓝牙断开时的广播收不到,用安卓原生开发可以收到蓝牙断开的广播。

预期结果:

  • 能收到蓝牙断开时的广播收不到

实际结果:

  • 收不到蓝牙断开时的广播收不到


更多关于uni-app io.dcloud.android.content.BroadcastReceiver的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app io.dcloud.android.content.BroadcastReceiver的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 中,使用 io.dcloud.android.content.BroadcastReceiver 监听蓝牙断开事件时,常见问题在于广播注册时机或权限配置。根据您的代码和描述,蓝牙关闭广播能接收但断开事件无响应,可能原因如下:

  1. 广播注册时机问题:确保注册代码在页面生命周期早期执行(如 onLoad),避免因 Activity 未完全激活导致监听失效。
  2. 权限缺失:在 manifest.json 中确认已添加蓝牙权限:
    {
      "permissions": {
        "BLUETOOTH": {},
        "BLUETOOTH_ADMIN": {}
      }
    }
回到顶部