Android 退出应用程序的实现方法
发布时间 - 2026-01-11 00:43:25 点击率:次Android 退出应用程序的实现方法

android 退出应用程序会调用android.os.Process.killProcess(android.os.Process.myPid())或是System.exit(0),这只是针对第一个Activity(也就是入口的Activity)时生效。如果有A,B,C三个Activity,而想在B 或C 中Activity 退出,调用上面的方法,往往会销毁当前的Activity 返回上一个Activity。当然也可以逐个返回上一个Activity,直到跳转到入口的Activity,最后退出应用程
序。但这样比较麻烦,而且逐个返回的体验并不友好。下面这种方法是写一个SysApplication 类,利用单例模式管理Activity,在每个在Activity 的onCreate()方法中调用ExitApplication.getInstance().addActivity(this)方法,在退出时调用ExitApplication.getInstance().exit()方法,就可以完全退出应用程序了。
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class SysApplication extends Application{
private List<Activity> mList = new LinkedList<Activity>();
private static SysApplication instance;
private SysApplication()
{
}
public synchronized static SysApplication getInstance()
{
if(null == instance)
{
instance = new SysApplication();
}
return instance;
}
//add Activity
public void addActivity(Activity activity)
{
mList.add(activity);
}
public void exit()
{
try{
for (Activity activity : mList)
{
if(activity != null)
activity.finish();
}
}catch (Exception e){
e.printStackTrace();
}finally{
System.exit(0);
}
}
public void onLowMemory(){
super.onLowMemory();
System.gc();
}
}
在每个activity 的onCreate中调用SysApplication.getInstance().addActivity(this);
然后在退出应用的时候调用SysApplication.getInstance().exit();
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# Android
# 退出应用程序的实现方法
# 完全退出应用程序
# Android 安全退出应用程序的方法总结
# Android中双击返回键退出应用实例代码
# Android Back键点击两次退出应用详解及实现方法总结
# Android实现点击两次BACK键退出应用
# Android退出应用最优雅的方式(改进版)
# Android完全退出应用程序的方法
# Android实现长按back键退出应用程序的方法
# android 完全退出应用程序实现代码
# Android 完全退出应用程序的解决方法
# 应用程序
# 第一个
# 在每个
# 希望能
# 这只
# 谢谢大家
# 往往会
# 就可以
# 跳转到
# 这种方法
# Activity
# getInstance
# addActivity
# pre
# onCreate
# SysApplication
# ExitApplication
# br
# span
# style
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在IIS7中新建站点?详细步骤解析
Laravel怎么清理缓存_Laravel optimize clear命令详解
laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法
如何用AI帮你把自己的生活经历写成一个有趣的故事?
如何解决hover在ie6中的兼容性问题
如何在局域网内绑定自建网站域名?
微信小程序 HTTPS报错整理常见问题及解决方案
焦点电影公司作品,电影焦点结局是什么?
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
html5的keygen标签为什么废弃_替代方案说明【解答】
如何快速启动建站代理加盟业务?
JavaScript Ajax实现异步通信
Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载
JavaScript实现Fly Bird小游戏
如何挑选高效建站主机与优质域名?
Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
Android自定义listview布局实现上拉加载下拉刷新功能
Python面向对象测试方法_mock解析【教程】
网站页面设计需要考虑到这些问题
千库网官网入口推荐 千库网设计创意平台入口
Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】
如何在Tomcat中配置并部署网站项目?
Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南
Win11关机界面怎么改_Win11自定义关机画面设置【工具】
谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复
如何在IIS中配置站点IP、端口及主机头?
JavaScript模板引擎Template.js使用详解
今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】
详解MySQL数据库的安装与密码配置
如何在香港免费服务器上快速搭建网站?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
手机软键盘弹出时影响布局的解决方法
JavaScript中如何操作剪贴板_ClipboardAPI怎么用
如何在IIS管理器中快速创建并配置网站?
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
Laravel如何处理和验证JSON类型的数据库字段
javascript基于原型链的继承及call和apply函数用法分析
Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)
Firefox Developer Edition开发者版本入口
如何在阿里云高效完成企业建站全流程?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
如何在阿里云虚拟主机上快速搭建个人网站?
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
晋江文学城电脑版官网 晋江文学城网页版直接进入
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
浅析上传头像示例及其注意事项
Laravel怎么实现验证码(Captcha)功能
QQ浏览器网页版登录入口 个人中心在线进入

