【问题标题】:How can I stop sound in Android when home button is pressed按下主页按钮时如何在Android中停止声音
【发布时间】:2011-02-21 18:44:51
【问题描述】:

我的应用程序的所有活动中都有一个应用程序和一首音乐 我希望,当用户按下主页按钮时,声音会停止,就像您可以从 android 市场下载的所有游戏一样。

我该怎么做?

当用户按下主页按钮时,会触发一个新意图,但 android 框架阻止捕获主要意图,因此我无法使用广播接收器进行此操作

<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.HOME" /> 

一种解决方案是停止音乐 onPause 并重新启动 onResume 但在此解决方案中,用户在从一个活动切换到下一个活动时听到第二次暂停,这不好 我在许多论坛上搜索此解决方案但未成功

附言

  1. android 框架不允许捕获 home 键 onKeyDown 事件
  2. android 框架不允许捕捉用户按下主页按钮时启动的意图

【问题讨论】:

    标签: android android-homebutton


    【解决方案1】:

    你可以尝试把代码放在onUserLeaveHint()方法中,它属于Activity,当你按下Home键时被调用。

    【讨论】:

    • 但是如果他正在玩游戏并且手机有来电,音乐不会停止?
    • 在这种情况下,如果将应用程序置于后台,音乐就会停止,无论如何。 @user626920 不想将代码放在 onResume() 和 onPause() 中,因为活动之间存在明显差距,所以我认为这正是他想要的。
    • onUserLeaveHint() 方法在我从一个活动传递到下一个活动以及按下主页按钮时被调用
    • 当我从一个活动传递到下一个活动以及按下主页按钮时,将调用 onUserLeaveHint 方法。所以 seretur 你的解决方案不起作用
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-08
    • 2021-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多