在来电电话上杀死应用程序
-
26-10-2019 - |
题
希望对某人来说是一个简单的人,但会给我带来麻烦。
我有一个循环声音文件的应用程序。我在Onpause中没有代码,因为我希望该应用程序继续在后台播放音乐。
现在,如果接收到来电,我需要关闭该应用程序。
我可以将代码添加到Onpause并关闭活动并停止媒体播放器。但是,如果启动了任何应用程序,这将停止应用程序。
如何检测传入的呼叫以检查On Propause内部?
解决方案
为了检测来电,我们注册了一个broadcastreceiver in Action android.intent.action.phone_state。当电话状态发生变化时,这将被广播。接收意图将具有额外的字符串变量TelephonyManager.extra_state,该extra_state描述了电话状态。如果此状态为telephonyManager.extra_state_ringing,则将有另一个额外的字符串变量telephonyManager.extra_incoming_number。该变量包含传入的电话号码。请注意,当状态不是telephonyManager.extra_state_ringing时,此变量将不存在。
资源 : http://www.androiddevblog.net/android/detecting-incoming-and-unston-calls-calls-in-indroid
基本上,一旦注册广播接收器,您就可以收听您对手机感兴趣的广播通知,然后采取相应的行动。
其他提示
你不必。 Android会暂停您的应用程序 - 您必须使用电话管理器来确定是否停止放置。正确的方法是在Onpause()方法中处理此操作
不隶属于 StackOverflow