Multi-Window: Essence of Multitasking Modes on Android

Author: IT Sectr Published: 2026-06-08 Reading time: 10 min

Multi-Window is a set of multitasking modes in Android that allows running several apps on the screen simultaneously. The system includes three modes: Split Screen for dividing the screen into two parts, Picture-in-Picture for video in a mini-window, and Freeform for windows of arbitrary size on large screens. According to Android Developers (2025), Multi-Window support is mandatory for devices with a screen width of 600 dp or more, and every developer must adapt their app to possible window size changes.

Key Takeaways

  • Multi-Window — Android’s multitasking system with three modes: Split Screen, PiP, Freeform.
  • Split Screen — two apps side by side, the divider is draggable, proportions change.
  • Picture-in-Picture — video in a mini-window on top of other apps.
  • Freeform — windows of arbitrary size on Android TV and large screens.
  • ResizeableActivity — a flag in the manifest to declare multi-window support.

What is Multi-Window in Android?

Multi-Window is an Android feature introduced in version 7.0 Nougat (API 24) that allows running two or more apps on the screen simultaneously. The mode was Google’s response to the growing popularity of tablets and large-screen devices, where single-task mode limits productivity.

Before Android 7.0, each app occupied the full screen — when switching between apps, the previous one was minimized. Multi-Window changed this model: now an app can occupy part of the screen while maintaining its active state. For developers, this means that onConfigurationChanged and handling size changes become mandatory.

On Android 12L (2022), Google made Multi-Window the default mode for large-screen devices — all apps on tablets run in a mode that allows multi-windowing. The only exceptions are apps with an explicit prohibition in the manifest.

Multi-Window Modes: Split Screen, PiP, Freeform

Split Screen — the most common mode. The screen is divided into two parts horizontally or vertically, the user drags the divider. Available on phones and tablets. Activated via Overview (Recents) — by dragging the app icon to the top or bottom edge.

Picture-in-Picture (PiP) — a mode for video and navigation apps. Content is displayed in a floating mini-window (approximately 15–25% of the screen) that can be moved. Available on Android 8.0+. To activate, use enterPictureInPictureMode() in the Activity.

Freeform — a mode for windows of arbitrary size, similar to desktop window managers. Available on Android TV and some large-screen devices from manufacturers (Samsung DeX). Apps run in windows with a title bar and control buttons.

How Multi-Window Works

When a user activates Multi-Window, Android creates a new Activity instance for each app and distributes the available screen space. Activities are placed in separate Tasks but use the same StackView with a divider between them.

The system notifies each Activity about the size change through onConfigurationChanged(). If the Activity does not handle this event, it is recreated. For Split Screen, the window width can decrease to 220 dp — the minimum width supported by the platform.

Android allows an app to declare a minimum width through android:minWidth and android:minHeight in the manifest. If the available space is less than these values, the Activity goes into pause.

Adapting Activity to Multi-Window Mode

To support Multi-Window, you need to set the flag android:resizeableActivity="true" in the manifest. This means the app can resize when the window changes. By default on Android 12L+, all apps are considered resizeable — the flag is ignored.

When the window size changes, the Activity can be recreated (by default) or handle the event in onConfigurationChanged if configChanges="screenSize|smallestScreenSize" is specified in the manifest. It is recommended to specify configChanges for key Activities to avoid state loss.

xml
<activity
    android:name=".MainActivity"
    android:resizeableActivity="true"
    android:configChanges="screenSize|smallestScreenSize|orientation" />

For apps that do not support resizing, Android shows a warning dialog. In this case, when switching to multi-window mode, the system may finish the Activity and show a snackbar with an offer to restart.

Multi-Window and the Activity Lifecycle

Multi-Window changes the standard Activity lifecycle. When another app becomes active in the adjacent window, the current Activity receives a call to onPause() but not onStop() — it remains visible, though not in focus. This is important: a video player should continue playback on onPause, not on onStop.

Developers need to distinguish between states: onPause + isInMultiWindowMode() = true means only a loss of focus, not leaving the screen. For video and animations, this is a signal not to stop playback but only to deselect control elements.

When exiting Multi-Window, onMultiWindowModeChanged() is called before onResume(). This gives the opportunity to rebuild the interface for full-screen mode before the user starts interacting.

Best Practices for Multi-Window

The first rule is to save state. In multi-window mode, the Activity can be recreated at any moment. Use SavedStateHandle in ViewModel or onSaveInstanceState for all data that should persist between configuration changes.

The second rule is to test at a minimum width of 220 dp. This value is considered the narrowest window in Split Screen. The interface should remain readable and functional. If some elements go out of bounds, use Window Size Class to switch between layouts.

The third rule is to disable functionality that does not work in Multi-Window. For example, Camera may be unavailable if the screen is too small. Check isInMultiWindowMode() before starting the camera or other full-screen functions.

Frequently Asked Questions

How to disable Multi-Window for my app?

Set android:resizeableActivity="false" in the manifest. On Android 12L+, the flag is ignored for large-screen devices, so for a complete prohibition use android:maxAspectRatio.

How to determine if an app is in Multi-Window?

Call isInMultiWindowMode() from the Activity. The method returns true if the app is running in Split Screen, PiP or Freeform. You can also subscribe to onMultiWindowModeChanged().

Does Multi-Window work on Android TV?

On Android TV, only Picture-in-Picture mode is available. Split Screen and Freeform are not supported — TVs use one main screen with a PiP window in the corner.

What happens to a foreground service in Multi-Window?

A foreground service continues working regardless of the mode. However, if the app switches to PiP, the system may temporarily pause execution to save resources.

How to handle Drag and Drop between windows?

Android supports Drag and Drop between windows in Multi-Window via ClipData and View.OnDragListener. Data is transferred through ContentProvider or Intent with FLAG_GRANT_READ_URI_PERMISSION.

Summary

  • Multi-Window — Android multitasking with three modes for simultaneous app work.
  • Split Screen — splitting the screen into two parts with a draggable divider.
  • Picture-in-Picture — video in a mini-window for Android 8.0+.
  • Freeform — windows of arbitrary size on Android TV and Samsung DeX.
  • resizeableActivity — a mandatory flag in the manifest for mode support.
  • onMultiWindowModeChanged — a callback for rebuilding the interface on enter/exit.
  • Conclusion — Multi-Window is mandatory for all apps on large screens since 2022.

We will develop a mobile application turnkey

IT Sectr creates iOS and Android applications for startups and businesses since 2017. We will advise you and propose the best solution.

Discuss the project

Read also