推出两个应用程序,Android牛轧糖

时间:2017-02-19 18:11:23

标签: java android

我想为android nougat创建一个应用程序,当我点击一个按钮时,我会在同一时刻和同一个屏幕上启动两个应用程序。 我想使用Android 7的这个新功能,有可能吗?

1 个答案:

答案 0 :(得分:2)

您可以将Accessibility API用于此类功能。它不需要任何权限。

android.accessibilityservice.AccessibilityService具有以下API:

service.performGlobalAction(GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN),可用于启动分屏模式。

public List<AccessibilityWindowInfo> getWindows ()检查是否打开了分屏模式。用AccessibilityWindowInfo.TYPE_SPLIT_SCREEN_DIVIDER

查找窗口

在启动活动时,您还需要玩意图标记。

 val options = ActivityOptionsCompat.makeBasic().toBundle()?.apply {
     putInt(
         ActivityOptionsFlags.KEY_LAUNCH_WINDOWING_MODE,
         ActivityOptionsFlags.WINDOWING_MODE_SPLIT_SCREEN_PRIMARY
     )
     putInt(
         ActivityOptionsFlags.KEY_SPLIT_SCREEN_CREATE_MODE,
         ActivityOptionsFlags.SPLIT_SCREEN_CREATE_MODE_TOP_OR_LEFT
     )
 }

 startActivities(listOf(intentBottom, intentTop).toTypedArray(), options)

使用此可访问性api和意图标志可以实现您的目标。有关详细的实施,请咨询stavangr的this回购。

https://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html

相关问题