Android 应用程序:后台运行的是什么?

发布于 2024-11-27 07:58:54 字数 143 浏览 3 评论 0原文

我几乎完成了 Android 应用程序的开发。我使用 GPS 定位和短信接收器类。我可以看到,如果我按“HOME”(房子),它仍在运行。我想在按下主页按钮时关闭 GPS 侦听器和 SMS_RECEIVER。

我正在使用 eclipse 和 windows。

I have almost finished developing an Android App. I use the GPS location and sms receiver class. I can see that if I press "HOME"(the house), it's still running. I would like to close the GPS listener and the SMS_RECEIVER when home button is pressed.

I am using eclipse and windows.

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

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

发布评论

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

评论(3

错々过的事 2024-12-04 07:58:54

您可以监听 onStop 事件并关闭监听器。

Activity.onStop 文档

注意:可能是 onPause 或onDestroy 可能是更好的选择。阅读活动生命周期并选择执行此操作的最佳点。

You can listen the onStop Events and shutdown the listeners.

Activity.onStop documentation

Note: maybe onPause or onDestroy might be better options. Read activity life-cycle and choose the best point to do this.

浅忆流年 2024-12-04 07:58:54

使用主页按钮退出将使您的应用程序保持运行(据我所知,主页更像是一个“最小化”按钮)。使用背面完全关闭。要覆盖主页按钮功能以实际退出,请使用以下命令:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
        case KeyEvent.KEYCODE_HOME:
            finish();
            return true;
        }
    }

    return super.onKeyDown(keyCode, event);
}

Using the home button to exit will leave your app running (home, from what I understand, is more of a "minimize" button). Use back to close completely. To override the home button functionality to actually exit, use this:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
        case KeyEvent.KEYCODE_HOME:
            finish();
            return true;
        }
    }

    return super.onKeyDown(keyCode, event);
}
淡莣 2024-12-04 07:58:54

如果您使用广播接收器(您可能使用单独的类并在 AndroidManifest.xml 中声明接收器),请考虑使它们成为您的 Activity 的类成员。在 Activity 类内部重写 onResume 和 onPause 并在那里注册和取消注册接收器。

If you use BroadCast receivers(you probably use separate classes and declare receivers in AndroidManifest.xml) then consider making them class members of your Activity. Inside Activity class override onResume and onPause and register and unregister receivers there.

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