在来电时杀死应用程序

发布于 2024-12-19 06:00:17 字数 215 浏览 0 评论 0原文

希望对某人来说这很容易,但给我带来了麻烦。

我有一个循环声音文件的应用程序。我在 onPause 中没有代码,因为我希望应用程序继续在后台播放音乐。

我现在需要在收到来电时关闭该应用程序。

我可以向 onPause 添加代码并关闭活动并停止媒体播放器。但是,如果启动任何应用程序,这会停止该应用程序。

如何检测来电并检查 onPause 内是否有来电?

Hopefully an easy one for someone, but causing me problems.

I have an app that loops sound files. I have no code in onPause as I want the app to continue playing music in the background.

I now need the app to close if an incoming call is received.

I can add code to onPause and close the activity and stop the mediaplayer. However this stops the app if any app is launched.

How can I detect an incoming call to check for inside onPause?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

微暖i 2024-12-26 06:00:17

为了检测来电,我们注册了一个 BroadcastReceiver
操作 android.intent.action.PHONE_STATE。这将被播出
当手机状态发生变化时。接收意图将有
一个额外的字符串变量 TelephonyManager.EXTRA_STATE 描述
电话状态。如果此状态为 TelephonyManager.EXTRA_STATE_RINGING
那么就会有另一个额外的字符串变量
TelephonyManager.EXTRA_INCOMING_NUMBER。该变量包含
来电号码。请注意,该变量不会出现
当状态不是 TelephonyManager.EXTRA_STATE_RINGING 时。

来源:http://www.androiddevblog.net/android /Detecting-incoming-and-outgoing-calls-in-android

基本上,一旦您注册了广播接收器,您就可以收听您对手机感兴趣的广播通知,然后采取相应的行动。

To detect the incoming call, we register a BroadcastReceiver for the
action android.intent.action.PHONE_STATE. This will be broadcasted
when there is a change in phone state. The receiving intent will have
an extra string variable TelephonyManager.EXTRA_STATE which describes
the phone state. If this state is TelephonyManager.EXTRA_STATE_RINGING
then there will be another extra string variable
TelephonyManager.EXTRA_INCOMING_NUMBER. This variable contains the
incoming phone number. Note that this variable will not be present
when the state is not TelephonyManager.EXTRA_STATE_RINGING.

source : http://www.androiddevblog.net/android/detecting-incoming-and-outgoing-calls-in-android

basically, once you register a broadcast receiver you can listen for the broadcast notification you are interested in your phone, and then act accordingly.

孤独患者 2024-12-26 06:00:17

你不必这样做。 Android 会负责暂停您的应用程序 - 您必须使用电话管理器来确定是否停止您的应用程序。正确的方法是在 onPause() 方法中处理这个问题

You do not have to. Android takes care of it pausing your app - you have to use telephony manager to determine whether to stop your aplication or not. Proper way would be to handle this in onPause() method

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文