• Android知识杂记(四)


    1、完整退出activity的设计思路
      1.1 封装一个基础activity类
      public abstract class RootActivity extends FragmentActivity{
      1.2 定义一个广播监听
      private IntentFilter filter = new IntentFilter(FINISH_ACTION);
      private BroadcastReceiver receiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
        finish();
        }
      };
      1.3 在oncreate中注册并在onDestroy中注销
        registerReceiver(receiver, filter);
        unregisterReceiver(receiver);
      1.4 使用时发送广播
        Intent intent = new Intent();
        intent.setAction(RootActivity.FINISH_ACTION);
        ctx.sendBroadcast(intent);

    2、Android 强制退出应用
      android.os.Process.killProcess(android.os.Process.myPid());//退出当前的进程
      System.exit(0);//退出JVM,清除资源

      备注:若只有killprocess,而无System.exit 则后台可能还有缓存的进程

      System.exit(0),System.exit(1)的区别:
      参数0和1代表退出的状态,0表示正常退出,1表示异常退出(只要是非0的都为异常退出),该参数只是通知操作系统该程序是否是正常退出。

    3、setCanceledOnTouchOutside(false) 设置dialog点击屏幕不消失;

    4、关于Context
      Context是个抽象类, Activity、Service、Application都是Context的子类。
      ActivityServiceApplication都是系统提供的组件,无法主动new,所以要一个Context来管理上下文关系;

  • 相关阅读:
    centos7 主从dns配置 bind服务
    Linux的启动流程
    shell脚本编程数组
    shell脚本编程进阶
    计划任务
    进程管理
    Linux网络配置
    计算机网络基础
    磁盘存储和文件系统
    软件包管理
  • 原文地址:https://www.cnblogs.com/Fredric-2013/p/5045944.html
Copyright © 2020-2023  润新知