在Android中,我开发了两个App。我想使用一个启动器以编程方式在分屏模式下启动这两个应用程序。我该怎么做?
最佳答案
我找到了答案。
您可以使用 Accessibility API 来实现此类功能。它不需要任何权限。
android.accessibilityservice.AccessibilityService
有以下 API:
service.performGlobalAction(GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN)
可用于启动分屏模式。
public List getWindows() 检查分屏模式是否打开。查找带有 AccessibilityWindowInfo.TYPE_SPLIT_SCREEN_DIVIDER 的窗口
启动 Activity 时,您还需要使用 Intent 标志。
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 和 Intent 标志,您可以实现您的目标。咨询this stavangr 的 repo 以了解详细实现。
https://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html
关于android - 使用一个启动器在分屏中启动我的两个应用程序 - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58987784/