Android 10蓝牙断开后台服务

问题描述

我们正在一个项目中,该项目包括将传感器连接到android设备。 Android设备将数据发送到Google Cloud。我们在这里遇到了一些问题,我们将不胜感激。

问题陈述是“每当屏幕关闭时,蓝牙连接状态就会断开,而我们需要它在后台运行,并继续从传感器接收数据并向云发送数据”。 实现了初始化蓝牙连接的后台服务 具有以下所有权限:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.BLUetoOTH" />
<uses-permission android:name="android.permission.BLUetoOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>

解决方法

原来,这还取决于电话类型本身。一些电话公司试图延长某些类型电话的电池寿命,因此它关闭了所有未使用的后台服务。

一种变通方法,可以通过创建一个循环来完成,该循环每隔一小段时间发送一条消息以维持连接。