我在 Android API 27 及更高版本上有一个奇怪的问题。我有一个用于我们消防部门的应用程序,它会检查每条收到的短信,如果发件人是指定的号码,就会对其做出反应。(我们使用短信报警,这个应用程序必须在每次短信报警时启动并开始做事)。一切都适用于 android 版本 26 及更低版本。但对于更高版本,应用程序会在几个小时后停止读取收到的短信。我需要去应用程序权限手动禁用和重新启用短信权限,然后它又可以工作几个小时了!!啊啊啊
我有一个带有 onReceive 函数的 BroadcastReceiver 类,我在 Manifest 中声明了它。
使用以下代码询问权限:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_SMS) != PackageManager.PERMISSION_GRANTED)) {
requestPermissions(arrayOf(Manifest.permission.READ_SMS), REQ_SMS_READ)
}
我在这里做错了什么?
非常感谢您的投入!