Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 非默认短信应用程序是否可以在收到短信时始终接收广播,即使强制关闭?_Android_Sms_Android Broadcastreceiver - Fatal编程技术网

Android 非默认短信应用程序是否可以在收到短信时始终接收广播,即使强制关闭?

Android 非默认短信应用程序是否可以在收到短信时始终接收广播,即使强制关闭?,android,sms,android-broadcastreceiver,Android,Sms,Android Broadcastreceiver,因此,当收到短信时,我会按照下面的步骤向大家展示一个简单的祝酒词。当应用程序运行时,它工作正常,但当我转到“设置”并强制关闭应用程序时,它停止工作 我在StackOverflow上查看了许多类似问题的答案,但没有一个真正回答了是否(以及如何)在每次收到短信时都可以执行一段代码,而不将该应用程序设置为设备上的默认短信应用程序(安卓4.4+)。是吗 考虑到甚至服务也可以停止,当这种情况发生时,服务不再是解决方案 我对API级别19感兴趣+ 谢谢不幸的是,不,如果你的应用程序不是默认的短信应用程序,这

因此,当收到短信时,我会按照下面的步骤向大家展示一个简单的祝酒词。当应用程序运行时,它工作正常,但当我转到“设置”并强制关闭应用程序时,它停止工作

我在StackOverflow上查看了许多类似问题的答案,但没有一个真正回答了是否(以及如何)在每次收到短信时都可以执行一段代码,而不将该应用程序设置为设备上的默认短信应用程序(安卓4.4+)。是吗

考虑到甚至服务也可以停止,当这种情况发生时,服务不再是解决方案

我对API级别19感兴趣+


谢谢

不幸的是,不,如果你的应用程序不是默认的短信应用程序,这是不可能的

当用户强制关闭你的应用程序时,它会回到停止状态,并且在你的应用程序再次显式启动之前,隐式
SMS\u接收的
广播的静态注册接收器不会工作;e、 例如,用户从显式启动程序快捷方式启动应用程序

另一方面,默认的SMS应用程序将通过
SMS\u DELIVER
广播发送,这是明确的。即使默认设置已被强制停止,该广播也将像任何其他显式启动
Intent
一样将其从停止状态中恢复

如果及时性不是一个主要问题,您可以根据需要查询SMS提供商-例如,在每次启动时-并确定自上次检查以来您是否错过了任何新消息