Android launcher中模拟按home键的实现

作者:lqh 时间:2023-03-25 02:33:48 

Android launcher中模拟按home键的实现


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的最底端,需要特别注意。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

来源:http://www.cnblogs.com/lipeineng/p/6842594.html

标签:launcher,home键
0
投稿

猜你喜欢

  • 浅谈Java基准性能测试之JMH

    2023-01-25 13:17:40
  • Java图形用户界面设计(Swing)的介绍

    2022-08-23 03:29:37
  • java 数据结构之删除链表中的元素实例代码

    2022-03-28 00:51:11
  • 关于MyBatis中Mapper XML热加载优化

    2023-05-20 01:49:34
  • Java实现员工管理系统

    2023-04-10 23:44:44
  • IntelliJ IDEA 15款超级牛逼插件推荐(自用,超级牛逼)

    2023-10-10 05:51:22
  • springboot以FTP方式上传文件到远程服务器

    2022-10-13 06:19:27
  • Idea打包springboot项目没有.original文件解决方案

    2022-07-12 20:06:08
  • C# 7.0中解构功能详解

    2022-08-11 21:06:34
  • java读取文件内容的三种方法代码片断分享(java文件操作)

    2023-11-21 06:53:20
  • C#实现的阴历阳历互相转化类实例

    2021-12-24 06:41:39
  • c# 用Dictionary实现日志数据批量插入

    2022-05-29 02:01:45
  • 详解netty中的frame解码器

    2022-02-22 14:40:21
  • C#实现将网址生成二维码图片方法介绍

    2022-08-14 02:31:49
  • java中对字符串每个字符统计的方法

    2023-09-23 13:53:16
  • Android中Splash应用启动白屏问题的解决方法

    2022-08-25 14:24:33
  • 一篇文章带你了解Java Stream流

    2022-11-05 10:26:18
  • java图形用户界面实现菜单功能

    2023-11-23 11:50:58
  • SpringCloud-Alibaba-Nacos启动失败解决方案

    2023-12-19 05:34:45
  • Android中Activity的四种启动模式和onNewIntent()

    2022-09-05 23:15:02
  • asp之家 软件编程 m.aspxhome.com