美文网首页
android开发退出程序的几种方式

android开发退出程序的几种方式

作者: RoboyCore | 来源:发表于2016-11-07 13:27 被阅读450次

    1.KillProcess:

    在android中我们如果想要程序的进程结束可以这样写:
    android.os.Process.killProcess(android.os.Process.myPid());

    这样就可以从操作系统中结束掉当前程序的进程。
    注意:android中所有的activity都在主进程中,在Androidmanifest.xml中可以设置成启动不同进程,Service不是一个单独的进程也不是一个线程。当你Kill掉当前程序的进程时也就是说整个程序的所有线程都会结束,Service也会停止,整个程序完全退出。

    2.System.exit:

    当我们在写java程序时肯定用到过System.exit(0),它的意思是退出JVM(java虚拟机),在android中一样可以用,我们可以想像一下虚拟机都退出了当然执行System.exit的程序会完全退出,内存被释放。
    注意:在android手机中查看当前正在运行的进程时可以发现还可以查看"后台缓存的进程",你会发现很多退出了的程序还在后台缓存的进程中,如果不要让程序在后台缓存那么就可以用System.exit(0);来退出程序了,可以清除后台缓存的本进程。
    System.exit(0),System.exit(1)的区别:
    参数0和1代表退出的状态,0表示正常退出,1表示异常退出(只要是非0的都为异常退出),即使不传0来执行也可以退出,该参数只是通知操作系统该程序是否是正常退出。

    3.finishAffinity()和finish();

    finishAffinity ()
    调用该方法是为了结束当前的activity和所有不当前activity有相同任务关系的所有父类activities。如果你重写了默认的行为例如onNavigateUp(),你应该在你创建一个基亍向上导航合成的回栈使用该方法

    相关文章

      网友评论

          本文标题:android开发退出程序的几种方式

          本文链接:https://www.haomeiwen.com/subject/gzkouttx.html