【问题标题】:Android - Bringing Activity to Foreground via the Call Button (Green Key)Android - 通过呼叫按钮(绿键)将 Activity 带到前台
【发布时间】:2010-02-04 11:07:14
【问题描述】:

我目前有一个应用程序,当按下 home 键时,它会自然地被推到后台。

活动失去焦点,但继续在后台运行。

所以我想知道当用户按下设备上的绿色键(呼叫按钮)时,是否可以将应用程序带回前台?

【问题讨论】:

    标签: android android-activity background phone-call foreground


    【解决方案1】:

    没有用户交互,没有办法完全覆盖呼叫按钮的行为。当按下它时,用户将被要求在默认操作(启动拨号器)或启动您的应用程序之间进行选择。

    如果您想这样做,您的清单将如下所示:

    <activity android:name=".SomeActivity">
        <intent-filter>
            <action android:name="android.intent.action.CALL_BUTTON" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>
    

    【讨论】:

    • 感谢克里斯托弗,它提供了启动我的活动的选项但这就是我想要发生的事情:用户单击绿色键以调出本机拨号器,他们拨打电话,我的应用程序检测到它并弹出一个对话框,说它已检测到和拨出电话然后我希望用户能够按主页或导航离开对话框,以便它在后台,然后当他们按下绿色键时,对话框再次获得焦点前景。所以我只想在我的活动已经运行时捕获绿色键,如果我的活动没有运行,我想忽略它,这可能吗?
    • 没有。通过按下调用按钮,框架正在调用startActivity() 并因此寻找要启动的活动。在这种情况下,您的可能会由于上述 XML 意图过滤器而启动。您不能有条件地决定处理来自 startActivity() 调用的意图。
    • 所以当我的 Activity 想要成为绿色键的一个选项时,我无法改变什么时候不想要?
    猜你喜欢
    • 1970-01-01
    • 2018-02-24
    • 1970-01-01
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-31
    • 1970-01-01
    相关资源
    最近更新 更多