Android 辅助功能服务中的“performGlobalAction(GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN)”的替代方案?如何以编程方式启用它?

问题描述 投票:0回答:1

我一直在 Android 辅助功能服务中使用 GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN 全局辅助功能操作,以编程方式启用分屏模式。不过,最近的 Android 版本似乎不支持此操作。

我进行了广泛的搜索,但找不到任何记录的替代方案或解决方法来实现相同的功能。以编程方式启用分屏模式对于我的应用程序的功能至关重要。

有人可以提供关于如何在没有 GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN 的情况下以编程方式实现分屏功能的见解或代码片段吗?

我还参考了这个问题:https://issuetracker.google.com/issues/225186417

感谢您的协助!

java android kotlin android-service accessibilityservice
1个回答
0
投票

我找到了解决方案:

val intent = Intent().apply {
component = ComponentName("com.google.android.apps.messaging", "com.google.android.apps.messaging.home.HomeActivity")
    addFlags(Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT)
    addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
    addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK)
}
this.startActivity(intent)

似乎是 Android 13 中触发分屏的唯一选项。

缺点是这仅适用于 Android 13,据我所知,您需要命名应占据第二个屏幕的应用程序和 Activity,这与

GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN
相反,后者只是打开分屏并让用户选择要打开的应用程序.

© www.soinside.com 2019 - 2024. All rights reserved.