【问题标题】:Programmatically enter multi-window mode in Android N在 Android N 中以编程方式进入多窗口模式
【发布时间】:2016-04-12 08:36:39
【问题描述】:

Android N 有一个新功能 - 多窗口模式。它使两个应用程序能够并排处于活动状态(实际上一个处于活动状态,另一个处于暂停状态,但我们可以同时看到两者)。

我正在寻找一个 API,我可以调用它来让我的应用程序进入多窗口模式。我在 Android N SDK 文档中找不到太多帮助。我试图让我的应用程序的两个活动并排运行,但无需用户执行手动步骤。

手动进入多窗口模式 用户可以通过以下方式切换到多窗口模式:

如果用户打开概览屏幕并长按活动标题,他们可以将该活动拖到屏幕的突出显示部分,以将活动置于多窗口模式。 如果用户长按 Overview 按钮,设备会将当前 Activity 置于多窗口模式,并打开 Overview 屏幕让用户选择另一个 Activity 共享屏幕。

【问题讨论】:

  • 目前,没有记录和支持的 API。如果他们添加一个,我会有点惊讶,但我当然不能排除它。

标签: android android-7.0-nougat


【解决方案1】:

API 24 的 SDK 引入了一个新常量,用于从无障碍服务切换分屏模式: https://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html#GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN

常量可以传递给以下方法: https://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html#performGlobalAction(int)

Google 似乎错过了在 performGlobalAction 方法中记录新常量。我仍然认为这是一个官方 API,因为 Google 没有将常量标记为隐藏。

您必须在您的应用中实现无障碍服务,并让用户在系统设置中手动启用该服务->无障碍,因此它可能不是所有应用的可行选项。

【讨论】:

    【解决方案2】:

    从 Android N 开始,不支持此功能。

    唯一受支持的进入多窗口模式的方式是用户手动触发它。

    【讨论】:

      【解决方案3】:

      我认为不存在您想要做的事情的 api,您可以尝试让您的应用在屏幕的每一侧都有两个片段。中间有一个黑条,使每个片段根据条的“X”位置调整大小。 :)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-07-31
        • 1970-01-01
        • 2016-10-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多