清空Android Task 栈,兼容 API 9

      通常,我们清理Task中所有的Activity ,是使用intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);方法, 但是这个方法不兼容API11之前的API版本,所有,我们需要使用另外的方法。

  intent.putExtra(INTENT_GOTO_REG_ACTIVITY, gotoRegActivity);
  ComponentName cn = intent.getComponent();
  Intent mainIntent = IntentCompat.makeRestartActivityTask(cn);
  context.startActivity(mainIntent);
  这样子,就重整了task堆栈,而这个API,有时候也被用到Notification跳转某个Activity。
  注意,目标Activity 的launchModel="singleTask"

更多相关文章

  1. 关于用Android的API重写drawRegion方法的代码
  2. Android实现退出时关闭所有Activity的方法
  3. ANDROID开机动画bootanimation.zip的详细制作方法
  4. Android Studio打包生成Jar包的方法(亲测可用)

随机推荐

  1. Caused by: java.lang.ClassNotFoundExce
  2. 关于android中的Context
  3. Android(安卓)Broadcast receiver 编程
  4. Android(安卓)AsyncTask源码简单分析
  5. Android(安卓)CountDownTimer倒计时器的
  6. Android共有五种布局方式
  7. android 调用.net的web Service开发 (KSO
  8. Android(安卓)之往通讯录中添加数据和查
  9. Android短信拦截
  10. android ExpandableListView详解