在开发android应用时,常常通过按返回键(即keyCode == KeyEvent.KEYCODE_BACK)就能关闭程序,其实大多情况下该应用还在任务里运行着,其实这不是我们想要的结果。
我们可以这样做,当用户点击自定义的退出按钮或返回键时(需要捕获动作),我们在onDestroy()里强制退出应用,或直接杀死进程,具体操作代码如下:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//按下键盘上返回按钮
if(keyCode == KeyEvent.KEYCODE_BACK){
new AlertDialog.Builder(this)
.setIcon(R.drawable.services)
.setTitle(R.string.prompt)
.setMessage(R.string.quit_desc)
.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.setPositiveButton(R.string.confirm, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
finish();
}
}).show();
return true;
}else{
return super.onKeyDown(keyCode, event);
}
}
@Override
protected void onDestroy() {
super.onDestroy();
System.exit(0);
//或者下面这种方式
//android.os.Process.killProcess(android.os.Process.myPid());
}
分享到:
相关推荐
在Android应用开发中,通常我们希望用户在按下返回键时能够退出应用程序,但为了提供更好的用户体验,Android系统并不推荐直接在用户第一次点击返回键时就退出。为了实现“再按一次返回键退出应用程序”的功能,我们...
在Android系统中,Home键是用户返回桌面的主要途径,通常情况下,按下Home键会结束当前应用程序并回到主屏幕。然而,在某些特定场景下,开发者可能需要捕获并处理Home键事件,比如实现后台运行、锁屏界面或者自定义...
本主题将详细介绍如何在Android应用中实现这些功能。 一、屏蔽Home键 在Android中,屏蔽Home键通常涉及到对系统的BroadcastReceiver和Intent.ACTION.MAIN这两个关键元素的处理。首先,创建一个BroadcastReceiver,...
在Android应用开发中,异常捕获是至关重要的一个环节,它可以帮助开发者及时发现并解决程序运行过程中的问题,提升用户体验。本篇文章将深入探讨“Android程序崩溃异常捕获”这一主题,包括如何实现异常捕获并将其...
在Android开发中,异常捕获是程序健壮性的...通过深入理解和实践这些异常处理技术,开发者可以编写出更加健壮和用户体验良好的Android应用。本资源“异常捕获-master”提供的学习材料将有助于开发者掌握这一关键技能。
在Android应用开发过程中,异常处理是非常重要的一环,因为良好的异常处理机制能够帮助开发者快速定位问题,提升用户体验。CrashReporter就是这样一种辅助工具,它简化了崩溃日志收集和分析的过程。 首先,我们需要...
在Android中,默认情况下应用程序无法直接监听Home键事件。但是可以通过创建一个特殊类型的对话框——`TYPE_KEYGUARD_DIALOG`类型的对话框来间接实现这一目标。当这样的对话框显示时,它可以捕获Home键事件,并通过...
本文将详细讲解如何在Linux内核层和Android应用层捕获按键事件,以及如何在Android NDK环境中编译和运行相关代码。 首先,我们需要了解Linux内核中的按键事件处理机制。在Linux系统中,输入设备(如键盘)通常会被...
这个应用程序尤其适用于开发者、网络安全专家以及对网络流量有深入需求的用户。其核心功能是实现类似于桌面端Wireshark的数据包嗅探功能,但针对Android操作系统进行了优化。 在Android开发中,网络编程是至关重要...
“返回键监听”是Android系统中的一个特性,它允许应用捕获并处理用户按下物理返回键或者在界面上触发的返回操作。在Ionic应用中,由于它是基于Web技术构建,所以需要额外的处理来实现这一功能。通常,开发者会使用...
下面将详细阐述如何在Android应用中捕获Home键,并探讨相关知识点。 首先,我们要了解Android系统的事件处理机制。当用户按下Home键时,系统会发送一个ACTION_HOME_DOWN广播,然后是ACTION_HOME_UP。默认情况下,...
标题中的“视频捕获-mpeg4压缩-网络传送源码(VC 6.0)”指的是一个使用Microsoft Visual C++ 6.0开发的项目,它涵盖了视频捕获、MPEG-4编码以及通过网络传输视频数据的核心功能。这个项目可能包含了一个完整的解决...
在Android领域,ksoap2-android是ksoap2的一个分支,专门针对Android环境进行了优化,使得开发者可以方便地在Android应用中集成SOAP服务调用功能。 二、ksoap2-android-assembly-2.5.4版本详解 这个版本的ksoap2-...
### Android应用程序开发宝典知识点概览 #### 一、Android系统及开发环境搭建 ##### 1.1 Android系统概述 - **定义与历史**: Android是由Google公司开发的基于Linux内核的操作系统,最初由Andy Rubin创立,旨在为...
在Android开发中,为了提供更好的用户体验,通常会设置一个安全机制,防止用户意外地通过连续点击返回键快速退出应用程序。这个机制就是所谓的“两次点击返回键退出应用”。下面将详细介绍如何实现这一功能。 首先...
标题中的“基于PMF-FFT的GPS捕获跟踪程序MATLAB程序”涉及到的是GPS信号处理技术,具体地,是使用部分匹配滤波器(PMF)结合快速傅里叶变换(FFT)的方法来实现GPS信号的捕获和跟踪。这是一种在MATLAB环境下实现的...
Android设备通常配备多个物理按键,包括返回键,这对于应用的导航至关重要。然而,在某些场景下,开发者可能希望禁用或自定义这些行为,例如在游戏或全屏模式下。 首先,让我们理解Android系统如何处理物理按键事件...