直播平台制作,Android 悬浮窗延时5秒返回APP问题

案例需求分析:在APP界面,点击Home键后,APP退出后台,同时会打开一个悬浮窗,当用户点击悬浮窗上的按键会返回APP。

出现的问题是:点击悬浮窗上的按键没有立即返回APP,而是需要延时一段时间才会启动。

解决方案就是:如果需要在手机桌面页面点击悬浮窗上的按键快速返APP内部,就需要给 APP 添加上 APP加上

android.Manifest.permission.STOP_APP_SWITCHES 权限。

AndroidManifest.xml 清单文件中添加如下权限:


<uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
 

Android.mk 文件添加如下:


LOCAL_CERTIFICATE := platform
 

在谷歌的 Android API Guides 中,特意提醒开发者不要在后台启动 activity,包括在 Service 和 BroadcastReceiver 中,这样的设计是为了避免在用户毫不知情的情况下突然中断用户正在进行的工作。


http://developer.android.com/guide/practices/seamlessness.html#interrupt
 

优雅的解决方式就是 将intent用PendingIntent包裹:


Intent intent = new Intent(applicationContext, PlayActivity.class);
intent.putExtra(InteractionFmMainActivity.INFO_ID_KEY, PlayActivity.sParamsIdKey);
intent.putExtra(InteractionFmMainActivity.INFO_TYPE_KEY,PlayActivity.sParamsInfoTypeKey);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
try {
      PendingIntent pendingIntent = PendingIntent.getActivity(ApplicationGlobal.getGlobalContext(), 0, intent, 0);
                        pendingIntent.send();
     } catch (Exception e) {
                        e.printStackTrace();
     }

以上就是 直播平台制作,Android 悬浮窗延时5秒返回APP问题,更多内容欢迎关注之后的文章

最新文章

  1. Dynamics CRM 2011-RootComponent Type
  2. Gnu C的不同于标准C的语法
  3. JMeter中的场景执行持续时间设置
  4. 多列布局——Columns
  5. Java 判断是否为汉字 判断是否为乱码 判断字符串是否为双整型数字 整数 数字
  6. 【关于JavaScript】常见表单用户名、密码不能为空
  7. 在SQL Server 2012中如何使用分组集
  8. 解决ubuntu下的文本编辑器gedit的乱码问题
  9. double类型如何保留2为小数
  10. Hello Word!
  11. 转载: Nova-Router 分析
  12. XML学习总结(二)——XML入门
  13. Canvas的drawImage方法使用
  14. 终于解决文件格式问题 unix格式
  15. dbcontext实例创建问题
  16. JDBC连接池之C3P0
  17. 解决fastDFS客户端连接超时问题
  18. 51Nod 1010 只包含因子2 3 5的数
  19. 深度优先搜索(DFS)和广度优先搜索(BFS)
  20. linux 文件目录类的指令 包含查找

热门文章

  1. 2.1.新建项目及项目目录和预览uni项目
  2. Channel和Stream的单双向问题
  3. 继承与多态 动手动脑3方法覆盖(override)”的要点
  4. G - 逆序对的数量
  5. 安卓逆向 利用JEB进行动态调试断点 进行内购
  6. 单例 Bean 的线程安全问题
  7. LeetCode-1609 奇偶树
  8. 报错解决:DENIED Redis正在保护模式下运行
  9. 让启动的jar包能打断点
  10. go对数组对象排序