问题描述
我正在开发一个Android应用,该应用需要在用户开车时扫描BT设备,无论该应用处于活动状态,在后台运行还是从最近的应用中删除。应用程式已具备在Android 8及更低版本中使用的这项功能。但它不能在Android 10及更高版本中使用。
- App已为
android.net.conn.CONNECTIVITY_CHANGE
文件中的android.net.wifi.STATE_CHANGE
和Manifest
注册了隐式广播接收器 - App已将
FusedLocationApi
和ActivityRecognitionApi
一起使用来检测用户何时在车上 - 并在
Manifest
文件中添加了以下内容
-
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" /><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
-
<service android:name="com.packagename.ActivityRecognitionManager$ActivityRecognizedService" />
(信息:ActivityRecognizedService扩展了IntentService)
我已实施并执行以下步骤:
-
不推荐使用
ActivityRecognitionClient
的{{1}} -
创建了一个从
的新类。ActivityRecognitionApi
扩展并使用Service
-
在
START_STICKY
中我用过Manifest
-
也已添加
<service android:enabled="true" android:name=".BackgroundDetectedActivitiesService" android:exported="false" android:stopWithTask="false" />
-
使用
向<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" /> <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
Manifest.permission.ACTIVITY_RECOGNITION
发出警告的用户权限 -
在
EasyPermission
中重新启动ActivityRecognitionClient
当应用程序进入后台或从近期列表中删除时,我仍然无法获取更新。我应该依靠onTaskRemoved
吗?
- Restart service when app is closed
- continue-service-even-if-application-is-cleared-from-recent-app
- android-activity-recognition-api
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)