Android 退出应用程序

本文介绍了三种实现Android应用退出的方法:直接退出、通过提示对话框退出以及模拟常见应用的后台挂起方式。每种方法都提供了详细的代码示例,帮助开发者理解如何根据不同场景选择合适的退出策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法一:按两次退出程序

        /**
         * 按返回按钮
	 */
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		if (keyCode == KeyEvent.KEYCODE_BACK) {
			long thisTime = System.currentTimeMillis();
			if(thisTime > mBackTime && (thisTime-mBackTime)<3000 && mBackTime!=0){
				tag = 1;
				tag_page = -1;
				if(null!=Constant.gongDanInfoArr){
					Constant.gongDanInfoArr.clear();	
					Constant.gongDanInfoArr= null;
				}
				stopService(new Intent(this, GPSService.class));
				ReceiveGongDanService.myTag = 0;
				finish();
			}else{
				Toast.makeText(this, "再按一次退出系统!", Toast.LENGTH_SHORT).show();
				mBackTime = thisTime;
			}
		}
		return false;
	}
方法二:提示退出程序

	/**
	 * 按返回按钮
	 */
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
			// 创建退出对话框
			AlertDialog isExit = new AlertDialog.Builder(this).create();
			// 设置对话框标题
                       isExit.setTitle("温馨提示");
			// 设置对话框消息
			isExit.setMessage("确定要退出吗?");
			// 添加选择按钮并注册监听
			isExit.setButton("确定", listener);
			isExit.setButton2("取消", listener);
			// 显示对话框
			isExit.show();
		}
		return false;
	}
	/** 监听对话框里面的button点击事件 */

	DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() {
		public void onClick(DialogInterface dialog, int which) {
			switch (which) {
			case AlertDialog.BUTTON_POSITIVE:// "确认"按钮退出程序
				tag = 1;
				tag_page = -1;
				if(null!=Constant.gongDanInfoArr){
					Constant.gongDanInfoArr.clear();	
					Constant.gongDanInfoArr = null;
				}
				finish();
				break;
			case AlertDialog.BUTTON_NEGATIVE:// "取消"第二个按钮取消对话框
				break;
			default:
				break;
			}
		}
	};

方法三:模拟QQ,微信等退出sss

       1.将程序退出到后台运行,只是假退出

	@Override  
    public boolean onKeyDown(int keyCode, KeyEvent event) {  
        if (keyCode == KeyEvent.KEYCODE_BACK) {  
            moveTaskToBack(false);  
            return true;  
        }  
        return super.onKeyDown(keyCode, event);  
    }  
        2.将程序完全退出
/**
	 * 退出程序
	 */
	public void quit(){
		stopService(new Intent(this, GPSService.class));
		stopService(new Intent(this, ReceiveGongDanService.class));
		finish();
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值