如何防止应用在android中切换多视图?

Posted

技术标签:

【中文标题】如何防止应用在android中切换多视图?【英文标题】:How can i prevent app to switch over multi-View in android? 【发布时间】:2022-01-21 23:41:08 【问题描述】:

我想阻止我的应用切换多视图,我已经在清单应用程序级别添加了android:resizeableActivity="false",但它不适用于一些安卓设备,如 OPPO 和小米手机等。

我已阅读并尝试了许多文章、文档,但没有找到解决方案。

【问题讨论】:

【参考方案1】:

可以在MultiWindow Documentation 中找到有用的提示。在MultiWindow在不同Android版本中的行为的要点列表下方,我们找到了以下句子

注意:设备制造商可以覆盖这些行为。

所以我怀疑像 OPPO 和 MI 这样的供应商正是这样做的。正如@DrHowdyDoo 的回答所说,这甚至是Android 开发人员选项的一部分,因此实施起来可能并不难。另请参阅blog post,详细解释设备制造商可以让您的应用做什么:

尤其是第三方开发者可以:

导致您的不可调整大小的导出活动出现在窗口中,即使您试图通过使用 android:resizeableActivity="false" 来避免这种情况

不幸的是,目前看来这还不能完全避免。

【讨论】:

感谢@BenjyTec 的精彩解释【参考方案2】:

我认为这种“强制活动可调整大小”可能会强制您的活动可调整大小。

【讨论】:

有没有办法防止强制调整大小? @AkshaySensussoft 我认为你无法阻止。 您无法在 api 30+ 上阻止它。但是,您可以在 api 29 或更低版本上阻止它。 我已经在 api 29 上对其进行了测试,启用强制调整大小选项不起作用,但在 api 30 或更高版本上它起作用并强制应用程序调整大小。 好的,谢谢...

以上是关于如何防止应用在android中切换多视图?的主要内容,如果未能解决你的问题,请参考以下文章

Android:如何使用UriMatcher切换多表、查询参数和活动?

如何防止特定视图响应摇晃手势?

如何防止 Phonegap 应用程序切换到横向视图

如何防止单选按钮进行多选?

iOS 多视图—视图切换之代码块传参切换

在 Android N 多窗口模式下删除导航视图顶部填充