java - Android:以画中画模式播放视频(单击关闭按钮时的多个实例)
问题描述
对于我的 android 应用程序,当用户播放视频时,新活动 (VideoPlay) 以 pip 模式启动。
清单(视频播放)
<activity
android:name=".PlayVideo"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:launchMode="singleTask"
android:theme="@style/AppTheme.NoActionBar"
tools:ignore="LockedOrientationActivity"
android:supportsPictureInPicture="true"
android:configChanges=
"screenSize|smallestScreenSize|screenLayout|orientation"/>
问题是当我单击 pip 屏幕的关闭按钮“X”时,会创建我的应用程序的一个新实例。
如何处理这个问题?谢谢你
解决方案
这不是您的应用程序的另一个实例,而是包含您的PlayVideo
活动的不同任务。为了防止在最近屏幕中显示您的活动,您可以添加android:excludeFromRecents="true"
活动的清单属性PlayVideo
。
此外,如果您PlayVideo
以某种方式强制关闭您的活动,而不是像 backpress 这样的用户交互,您可能喜欢打电话finishAndRemoveTask()
而不是仅仅finish()
打电话finish()
不会从最近的活动中删除您的活动。
推荐阅读
- javascript - replace() 函数未按预期工作
- python-3.x - 通过 python sdk 创建 Azure VM 时出现错误“无法打印的云错误异常”
- node.js - 反向代理的 NodeJS 问题
- python - 如何使用 XPath 选择样式不包含 display: none 的元素并排除其子元素
- css - 新版 chrome 84.0.4147.105 的样式错误
- discord.js - Discord.js v12 出现反应消息问题
- typescript - VueJs - 无效的道具:道具“页面”的类型检查失败。预期 DocumentPageDto,得到对象
- java - Java11 迁移 - 编译错误,Symbol$ClassSymbol 无法转换为类 Symbol$MethodSymbol
- r - 有条件地替换组内的 nr
- python - 为什么覆盖 __lt__ 也会改变大于运算?为什么要用它来排序?