微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

关于Android活动生命周期的愚蠢问题

如何解决关于Android活动生命周期的愚蠢问题

| 我有活动+服务班。 程序运行时,将显示活动,并且将以“ 0”活动方法启动服务。 当我单击虚拟机的HOME按钮时,将出现HOME SCREEN,但活动已消失 在这一点上,我想知道该程序在哪种情况下-已暂停/已停止-??? 服务发生了什么事? (它还在运行吗?) 如何使用该服务将活动放在首位? 谢谢...     

解决方法

        如果您按活动按钮主页,则暂停它。并通过按下主屏幕按钮再次启动它即可恢复它。 服务:取决于服务的启动方式。 如果使用startService(intent)启动服务,则服务将一直运行到: a)您可以通过调用stopService明确停止它。 b)android杀死它 c)您从服务内部调用selfStop 如果使用bindService()启动服务而不调用startService(),则该服务将: a)运行直到活动被销毁(没有暂停,因此这意味着如果您按下home键,它将继续运行),这也意味着您需要调用unbind()。 b)android杀死它 c)直到您从服务内部调用selfStop 要将活动置于前台,您需要调用一个意图并设置标志,我认为它是从历史或类似的东西启动的。...您将必须检查文档。 intent.addFlag(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); <-我认为 或这个-> FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY     ,        参见下面的活动流程,希望对您有所帮助     ,        
Activity
(和
Service
)的状态可能会根据发生的其他情况而有所不同。如果Android系统需要资源,则可能已经破坏了您的
Activity
(也可能还破坏了
Service
)以获得这些资源。您应该阅读以下内容: 活动生命周期和 服务生命周期 在“ 1”图中(同样在Mark Ba​​kker的回答中),请特别注意包含“其他应用程序需要内存”文本的框。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。