在开发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高级应用源码-捕获Home键.zip
异常捕获-master.zip项目安卓应用源码下载异常捕获-master.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
Android 捕获home键
程序崩溃异常捕获,主要是对android程序运行中的异常进行捕获,并保存到文档里,省去不停盯着后台查看,方便调试和使用中错误的记录。
ParrotSnoop - 用于IP数据包捕获的Android应用
自己制作的一款键盘按键捕获工具,支持后台隐藏运行,适用于一般场合的键盘捕获。
android 4.0 上的HOME 键捕获
利用键盘钩子在Windows平台下捕获键盘动作-玩红警2时按Q键紧急关闭红警2程序_老板键.zip
视频捕获-mpeg4压缩-网络传送源码(VC 6.0).rar-video capture-compressed mpeg4-network transmission source
加载并显示一副图像对内存使用情况有显著的影响,Android提供了一个名为BitmapFactory 的实用程序类,该程序提供了一系列的静态方法,允许通过各种来源加载Bitmap图像。针对我们的需求,将从文件加载图像,并在最初...
matlab_GPS快速捕获算法_包括串行捕获技术 _并行码相位捕获_并行频率捕获
CrashReporter是捕获应用程序崩溃并将其保存在文件中的便捷工具
Android例子源码捕获应用全局异常避免强制退出并写出日志到sd卡
实时应用程序,用于捕获和传输手部动作数据。 先决条件 安装 安装包: pip install . 使用-e, --editable标志以开发模式安装软件包。 用法 运行应用程序: mocap --preview 默认情况下,运动数据以0.0.0.0:8000...
VideoIMUCapture-Android Android应用程序,用于捕获视频和IMU数据,这些数据可用于使用SLAM和Motion技术的Structure进行3D重建。描述该Android应用程序是供研究人员使用同时定位和制图(SLAM)和Motion的结构(SfM...
自定义一个Android应用的Crash异常捕获器
STM32F10X-TIM2-5—通用定时器-输入捕获-测量脉冲宽度例程源码例程源码,亲测可用!
Android4.0以上外接鼠标-左键单击-右键单击-捕获事件Demo; 网上没有这样的Demo,例子非常简单,节约下载者查询相关资料的时间。 如果用在ListView里面,只要在自定义的Adapter里面设置该监听事件;并在Activity的...
创建浏览器控件,控件捕获keydown,mouse等消息.