Android 应用程序:后台运行的是什么?
我几乎完成了 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以监听 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.
使用主页按钮退出将使您的应用程序保持运行(据我所知,主页更像是一个“最小化”按钮)。使用背面完全关闭。要覆盖主页按钮功能以实际退出,请使用以下命令:
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:
如果您使用广播接收器(您可能使用单独的类并在 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.