Intent mHomeIntent = new Intent(Intent.ACTION_MAIN);
mHomeIntent.addCategory(Intent.CATEGORY_HOME);
mHomeIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
getApplicationContext().startActivity(mHomeIntent); // 要用getApplicationContext

Android中,如果想把stack中的某个Activity moveTaskToFront,可以定义一个BroadcastReceiver接收某种类型的Broadcast,并在onReceive中start该Activity。但是需要注意的是,startActivity前面的context参数问题。
android的activity中不能使用startAcitivity来将自己提前到stack的前面,所以这个onReceive中的startActivity的context不能是Activity。
另外如果该BroadcastReceiver是动态注册的(dynamic register),此时在onReceive中传入的context的参数就是这个Activity,也不能使用。
对付上面这个问题比较有效的办法,就是不要直接使用这个context,而是使用context.getApplicationContext(),这样就可以实现moveTaskToFront了。
与moveTaskToFront相对应的是moveTaskToBack,这个相对比较简单,Activity已经提供了moveTaskToBack方法。当时需要注意的是,一旦调用这个方法,该Activity所在的task将会被整体搬迁到stack的最底端,需要特别注意。

最新文章

  1. (七)WebGIS中栅格、矢量图层设计之栅格、矢量图层的本质
  2. 交换两个变量的值swap(a,b)
  3. 运用SET ANSI_PADDING OFF创建某个字段为自增列的表,以及插入数据
  4. (4)Redis 资料
  5. 关于程序路径Path.Combine以及AppDomain.CurrentDomain.BaseDirectory
  6. docker一些命令
  7. [Angular 2] Nesting Elements in Angular 2 Components with ng-content (AKA Angular 2 Transclusion)
  8. 不改变中间层,如何玩转 .NET 的远程处理功能?
  9. this的相关知识
  10. (转)A Recipe for Training Neural Networks
  11. SSIS 包部署错误 0xC0010014
  12. Coursera Deep Learning 2 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization - week2, Optimization algorithms
  13. python算法练习
  14. java1.8 版本改成 java1.7版本
  15. fortune 计算公式
  16. 第3章 Python基础-文件操作&函数 文件操作 练习题
  17. jenkins学习之centos6.9下安装
  18. 【刷题】BZOJ 2555 SubString
  19. 在WebClient类中保持Session
  20. python 两个面试题

热门文章

  1. 精选 TOP45 值得学习的Python项目
  2. 分享13道上海尚学堂拿回来的Java面试真题,这些都是Java核心常见问题,想拿OFFER必看!
  3. Python科学计算基础包-Numpy
  4. 开源播放器 ijkplayer (六) :Android 下使用 ijkplayer 异常处理思路
  5. [Swift]LeetCode717. 1比特与2比特字符 | 1-bit and 2-bit Characters
  6. Kubernetes---Pod的扩容和缩容
  7. Docker for windows : 安装Redis
  8. ubuntu-18.04 设置开机启动脚本
  9. FAutoTest-微信小程序 / 公众号H5 自动化利器
  10. 前端基本知识(三):JS的闭包理解(第一个思考题有错误,已修改)