android双击退出如何实现android的连续点击两次会退键退出

android双击退出  时间:2021-06-15  阅读:()

android怎样点击两下退出程序

在Android中,Activity有个栈,一个Activity结束掉,会回到上一个Activity,并不是退出应用程序。

Android中,退出应用程序的方式: 1.通过pid int pid = android.os.Process.myPid(); //获取当前应用程序的PID android.os.Process.killProcess(pid); //杀死当前进程 这种方法退出应用,是会保留某些后进程,例如:Service,Notifications等。

2.通过ActivityManager ActivityManager manager = (ActivityManager)context.getSystemService(ACTIVITY_SERVICE); //获取应用程序管理器 manager.killBackgroundProcesses(getPackageName()); //强制结束当前应用程序 这种方式退出应用,会结束本应用程序的一切活动,因为本方法会根据应用程序的包名杀死所有进程包括Activity,Service,Notifications等。

怎么在android实现退出功能

Android Studio中,随时随地的退出程序(记得导入相应的包,可以设置自动导入所需的包的,下面的代码还没有导入包的部分): ①新建一个 ActivityCollector 类,作为活动管理器,代码如下所示: public class ActivityCollector { public static List<Activity> activities = new ArrayList<>(); public static void addActivity(Activity activity) { activities.add(activity); } public static void removeActivity(Activity activity) { activities.remove(activity); } public static void finishAll() { for (Activity activity : activities) { if(!activity.isFinishing()) { activity.finish(); } } activities.clear(); //以下是杀死当前程序进程的代码,保证程序彻底退出。

android.os.Process.killProcess(android.os.Process.myPid()); } } ②再新建一个类BaseActivity,并让所有活动继承这个类,也就是其他的全部活动都改为extends BaseActivity,而不是原来的extends AppCompatActivity。

public class BaseActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d("BaseActivity", getClass().getClass().getSimpleName()); ActivityCollector.addActivity(this); } @Override protected void onDestroy() { super.onDestroy(); ActivityCollector.removeActivity(this); } } ③在你想要退出程序的页面(Activity)的setContentView(R.layout.*****); 下面加上如下代码,从而实现点击一个按钮退出整个程序。

Button button3 = (Button) findViewById(R.id.*****); button3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ActivityCollector.finishAll(); } }); //*号部分看具体情况而定

Android中按返回键怎么退出一个用程序

重写activty的onkeydown在用户按下返回键的时候调用,所以我们可以通过重写onkeydown的方法实现,还有可能到了MainActivity前面还有其他acitivty存活这,我们需要在onkeydown的时候把所有的activity都结束掉,为了实现这个我们先定义一个BaseActivity,在Oncreate和ondestroy生命周期里存储acitivty的引用 用一个List集合存储存活的acitivity,我们把list作为application成员 写一个MyApp类,作为程序启动的application public class MyApp extends Application{ private List<Activity> activities = new ArrayList<Activity>(); public List<Activity> getActivities(){ return activities; } } BaseActivity代码如下 class BaseActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ((MyApp)getApplication()).getActivities().add(this); } @Override protected void onDestroy() { super.onDestroy(); ((MyApp)getApplication()).getActivities().remove(this); } } 以后工程里的所有Activity都继承于BaseActivity即可 最后是MainAcitivty的代码,在onkeydown方法里遍历list集合,调用每个activity的finish方法即可 public class MyActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_two); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { List<Activity> activities = ((MyApp)getApplication()).getActivities(); for(Activity activity:activities){ activity.finish(); } return super.onKeyDown(keyCode, event); } }

如何实现android的连续点击两次会退键退出

@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { if ((System.currentTimeMillis() - exitTime) > 2000) { exitTime = System.currentTimeMillis(); } else { finish(); System.exit(0); } return true; } return super.onKeyDown(keyCode, event); }

创梦云 香港沙田、长沙联通2核1G仅需29元一个月 挂机宝7元一个月

商家介绍:创梦云是来自国内的主机销售商,成立于2018年4月30日,创梦云前期主要从事免备案虚拟主机产品销售,现在将提供5元挂机宝、特惠挂机宝、香港云服务器、美国云服务器、低价挂机宝等产品销售。主打高性价比高稳定性挂机宝、香港云服务器、美国云服务器、香港虚拟主机、美国虚拟主机。官方网站:http://cmy0.vnetdns.com本次促销产品:地区CPU内存硬盘带宽价格购买地址香港特价云服务器1...

DogYun香港BGP月付14.4元主机简单测试

前些天赵容分享过DogYun(狗云)香港BGP线路AMD 5950X经典低价云服务器的信息(点击查看),刚好账户还有点余额够开个最低配,所以手贱尝试下,这些贴上简单测试信息,方便大家参考。官方网站:www.dogyun.com主机配置我搞的是最低款优惠后14.4元/月的,配置单核,512MB内存,10GB硬盘,300GB/50Mbps月流量。基本信息DogYun的VPS主机管理集成在会员中心,包括...

香港云服务器 1核 256M 19.9元/月 Mineserver Ltd

Mineserver(ASN142586|UK CompanyNumber 1351696),已经成立一年半。主营香港日本机房的VPS、物理服务器业务。Telegram群组: @mineserver1 | Discord群组: https://discord.gg/MTB8ww9GEA7折循环优惠:JP30(JPCN2宣布产品可以使用)8折循环优惠:CMI20(仅1024M以上套餐可以使用)9折循...

android双击退出为你推荐
财务系统软件现在企业里一般用什么财务软件的啊flash实例Flash元件和实例的概念及关系?暴力破解rar怎么暴力破解rar密码?快速且有效的微信如何只发文字微信朋友圈如何只发文字,怎么发文字不要图微信网页版登陆首页微信网页版怎么用?微信网页版怎么登陆?东兴证券网站东兴证券超强版下载,东兴证券超强版v6下载官方网站,东兴证券软件下载怎么查微信注册时间怎么查看自己的微信号用了多久西安娱乐西安那里有好玩的地方,夜生活不去在线操作系统TOMOS在线操作系统是什么?ibooks支持什么格式iPhone手机支持什么格式的电子书?
免费网站空间 东莞虚拟主机 smartvps typecho 网通代理服务器 老左来了 泉州电信 lamp怎么读 注册阿里云邮箱 阿里云邮箱个人版 北京主机托管 中国电信宽带测速 移动王卡 japanese50m咸熟 winserver2008 winserver2008r2 alertpay 主机配置 中国最年轻博士 电脑主机声音很大 更多