Android应用程序退出按钮

Android应用程序退出按钮,android,button,exit,Android,Button,Exit,我不确定是否需要在我的应用程序中添加退出按钮。这样做有什么意义吗?如果退出一个活动或服务时未正确关闭.finish(),这会造成很大的损失吗 不,你没有。在developer.android.com上阅读活动生命周期 在旧版本的android上,您必须小心,不要意外地让后台服务运行并保留资源,但这已经被修改。您不需要添加退出按钮。如果不这样做,您的活动将被保存在内存中,直到系统回收它。它不会消耗任何cpu 当然,如果您有任何工作线程正在运行,您应该在onStop()或onPause()中停止它们

我不确定是否需要在我的应用程序中添加退出按钮。这样做有什么意义吗?如果退出一个活动或服务时未正确关闭.finish(),这会造成很大的损失吗

不,你没有。在developer.android.com上阅读活动生命周期


在旧版本的android上,您必须小心,不要意外地让后台服务运行并保留资源,但这已经被修改。

您不需要添加退出按钮。如果不这样做,您的活动将被保存在内存中,直到系统回收它。它不会消耗任何cpu

当然,如果您有任何工作线程正在运行,您应该在onStop()或onPause()中停止它们,这取决于您的线程正在执行的操作

出于某种原因,许多应用程序都会添加一个退出按钮。我猜原因是他们不相信自己能写出正确的代码,或者他们不相信安卓操作系统能正确地清理


未完成正确的完成程序不会对您以外的人造成任何伤害。

您的应用程序中不需要退出按钮。这就是安卓的工作原理。用户没有获得任何实际退出应用程序的方法


当您调用“finish”时,应用程序堆栈被推到后台。它仍然存在于记忆中。Android自己决定何时关闭应用程序(即从内存中删除其实例),通常,当您的应用程序成为最旧的应用程序且未使用时间最长时,就会关闭该应用程序。

伙计们,您是正义的,但在某些情况下,退出按钮可能有意义。假设您在应用程序类(应用程序的子类)中保留一些应用程序范围的全局数据,例如一些敏感数据等。当用户关闭最终活动并将其销毁时,应用程序将不会终止。-开发人员不应该依赖Application.onTerminate()方法。您可以很容易地检查它-即使在所有活动关闭的应用程序仍然处于活动状态的情况下。只要应用程序实例处于活动状态,访问这些对象和收集数据就相对容易

我找到了两种杀死应用程序类实例的方法:

  • null’删除所有对象引用(这对于大型项目来说几乎不可能),然后调用垃圾收集
  • 召唤

    android.os.Process.killProcess(android.os.Process.myPid())


  • 所以退出按钮可能具有完成所有活动的功能,调用垃圾收集,然后调用killProcess()-这将保证安全删除应用程序中存储的全局数据。

    我同意barmaley的上述帖子

    长话短说,如果您的问题与Android系统本身有关,您不需要退出应用程序。别担心,要快乐。这尤其适用于懒惰的用户(还记得以前的Symbian时代)

    但是,如果您对应用程序本身有什么想法,那么请继续做下去。您可以完成活动、取消和终止。要讲道理,因为常识总是比世界上所有的教程和参考书都要好


    无论如何,就我的2c。

    当我第一次开始为Android编写代码时,我认为手动退出我的主要活动是个好主意。我发现,通过stopSelf关闭活动会导致instanceState数据损坏,再次打开活动时会导致大量ANR

    活动生命周期文档是直接来自Google框架工程师的信息。每一个字都是有原因的

    假设垃圾收集需要cpu。这可能看起来很琐碎,但在为移动平台设计框架时,您是否会尝试在内存中尽可能多地缓存,以防再次需要它,因为cpu时间=电池,并且从闪存加载很昂贵

    对整个应用程序进行GCing是非常重要的。尤其是当活动可能被重复使用时。设计必须考虑所有可能的用例。缓存是有意义的。系统就是根据这一原理设计的


    我想说,不遵循活动生命周期文档会带来问题

    从技术角度看,不,您不需要添加退出按钮,因为这里列出了所有很好的理由

    不幸的是,用户并没有以这种方式得到通知,他们经常会因为“使用任务杀手”或“强制关闭”你的应用程序而降低评论分数


    这是我的应用程序评论/反馈中经常出现的请求和批评。因此,可能有必要安抚用户。

    我认为退出按钮可以向用户保证您的应用程序已关闭


    我知道,这并不意味着应用程序肯定是关闭的,但如果用户感觉通过退出按钮可以更好地控制,那么我认为这是一个好主意

    任何说你不需要退出按钮的人都是对的,但把一个按钮放进去也不会有什么坏处。用户喜欢看到一种退出应用程序的方法,这不是关于糟糕的编程,实际上是关于正确的编程,给用户一个退出按钮,如果他们从来没有使用过它,那么它会很好,如果有更好的

    某些应用程序在运行时会改变设备的配置,或者会消耗大量CPU或数据。您可能希望给用户一个完全退出应用程序的选项

    退出按钮有适当的用例。 例如,我制作的一个应用程序也需要管理WiFi网络:设备配置不断变化。棒极了,在应用程序处于活动使用状态时,在这种情况下,用户希望退出应用程序后该行为能够有效停止

    因此,我的应用程序有一个退出按钮,主要用于清理它创建的WiFi配置。我可以做一个按钮停止和清理,但没有用户会理解。他们只想关闭应用程序,然后退出

    • 应用程序运行:由应用程序管理的wifi
    • 应用程序退出:diy/android wifi
    现在,在我的应用程序中选择Exit进行清理,然后执行
    finish()
    ,bu