退出程序方法总结2退出程序方法总结2.doc

退出程序方法总结2退出程序方法总结2.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
退出程序方法总结2退出程序方法总结2

android2.2怎么完全退出程序 在android2.2中,我用 ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); manager.killBackgroundProcesses(package); 权限也加了android.permission.KILL_BACKGROUND_PROCESSES 但是总是不能退出来呢? 009dsa 发表于 2010-9-15 16:15:26 android.os.Process.killProcess(android.os.Process.myPid()); 试试? longdanbin 发表于 2010-9-15 19:04:59 试试manager.restartPackage(package); 权限加android.permission.RESTART_PACKAGE。随便一说的 xinglin0212 发表于 2010-10-11 21:04:33 需要每离开一个当前的Activity进入下一个之前,都执行finish()去结束当前的Activity。这样,Activity就不会推积在program stack内。而当最后的Activity执行了finish()后,就会自然退出到卓面。其实,在处理多Activity的程序时,这是个良好习惯。否则程式不断地消耗很多无谓资源。 xq135816 发表于 2011-1-25 17:02:07 Android退出一个多Activity应用程序的方法 2010年11月06日 星期六 上午 11:29 对于单一Activity的应用来说,退出很简单,直接finish()即可。 当然,也可以用killProcess()和System.exit()这样的方法。 但是,对于多Activity的应用来说,在打开多个Activity后,如果想在最后打开的Activity直接退出,上边的方法都是没有用的,因为上边的方法都是结束一个Activity而已。 当然,网上也有人说可以。 就好像有人问,在应用里如何捕获Home键,有人就会说用keyCode比较KEYCODE_HOME即可,而事实上如果不修改framework,根本不可能做到这一点一样。 所以,最好还是自己亲自试一下。 那么,有没有办法直接退出整个应用呢? 在2.1之前,可以使用ActivityManager的restartPackage方法。 它可以直接结束整个应用。在使用时需要权限android.permission.RESTART_PACKAGES。 注意不要被它的名字迷惑。 可是,在2.2,这个方法失效了。 在2.2添加了一个新的方法,killBackgroundProcesses(),需要权限android.permission.KILL_BACKGROUND_PROCESSES。 可惜的是,它和2.2的restartPackage一样,根本起不到应有的效果。 另外还有一个方法,就是系统自带的应用程序管理里,强制结束程序的方法,forceStopPackage()。 它需要权限android.permission.FORCE_STOP_PACKAGES。 并且需要添加android:sharedUserId=android.uid.system属性 同样可惜的是,该方法是非公开的,他只能运行在系统进程,第三方程序无法调用。 因为需要在Android.mk中添加LOCAL_CERTIFICATE := platform。 而Android.mk是用于在Android源码下编译程序用的。 从以上可以看出,在2.2,没有办法直接结束一个应用,而只能用自己的办法间接办到。 现提供几个方法,供参考: 1、抛异常强制退出: 该方法通过抛异常,使程序Force Close。 验证可以,但是,需要解决的问题是,如何使程序结束掉,而不弹出Force Close的窗口。 2、记录打开的Activity: 每打开一个Activity,就记录下来。在需要退出时,关闭每一个Activity即可。 3、发送特定广播: 在需要结束应用时,发送一个特定的广播,每个Activity收到广播后,关闭即可。 4、递归退出 在打开新的Activity时使用startActivityForResult,然后自己加标志,在onActivityResult中处理,递归关闭。 除了第一个,都是想办法把每一个Activity都结束掉,间接达到目的。 但是这样做同样不完美。 你会发现,如果自己的应用程序对每一个Activity都设置了nosensor,在两个

文档评论(0)

cduutang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档