Large screen app quality

Android devices come in a variety of form factors—phones, tablets, foldables, ChromeOS devices—which have a wide range of screen sizes. Android supports multiple display modes, including multi-window, multi-display, multi-instance, and picture-in-picture. Foldable devices can be in various folded states, or postures, such as tabletop posture or book posture.

Depiction of the three quality tiers as layers stacked vertically.

To ensure your app provides a great user experience regardless of device form factor, screen size, display mode, or posture, complete the large screen compatibility checklists and tests.

The checklists and tests define a comprehensive set of quality requirements for most types of Android apps. Your app probably won't need to meet all of the requirements. Implement the ones that make sense for your app's use cases.

As you enhance your app with large screen capabilities, help users better understand your app's large screen experience by updating your app listing on Google Play. Upload screenshots that show off the app on large screens. Call attention to large screen features in your app description. For more information and best practices, see Google Play Help.

For examples of optimized and differentiated large screen layouts, see the large screen gallery.

Large screen compatibility checklists

The compatibility checklists define criteria to help you assess the level of support your app provides for large screens.

Levels of support include the following:

TIER 3 (basic) — Large screen ready

Users can complete critical task flows but with a less than optimal user experience. Your app runs full screen (or full window in multi-window mode), but app layout might not be ideal. The app is not letterboxed; it does not run in compatibility mode. The app provides basic support for external input devices, including keyboard, mouse, trackpad, and stylus.

TIER 2 (better) — Large screen optimized

Your app implements layout optimizations for all screen sizes and device configurations along with enhanced support for external input devices.

TIER 1 (best) — Large screen differentiated

Your app provides a user experience designed for tablets, foldables, and ChromeOS devices. Where applicable, the app supports multitasking, foldable postures, drag and drop, and stylus input.

Complete the Tier 2 requirements to enable your app to provide an excellent user experience on all Android devices. To make your app outstanding on large screens, complete Tier 1.


Tier 3 icon

TIER 3

Large screen ready

Large screen ready apps must first fulfill the core app quality requirements—in particular, the UI and Graphics requirements.

Apps must also meet the following large screen requirements:

Category ID Test Description
Configuration and continuity LS-C1 T3-1, T3-2

App fills the available display area—the entire screen or, in multi-window mode, the app window. App is not letterboxed; it does not run in compatibility mode.

App handles configuration changes and retains or restores its state as the device goes through configuration changes such as device rotation, folding and unfolding, and window resizing in split‑screen and desktop windowing modes, for example:

  • Scroll position of scrollable fields is maintained
  • Text typed into text fields is retained and the keyboard state is restored
  • Media playback resumes where it left off when the configuration change was initiated
LS-C2 T3-3 App handles combinations of configuration changes, such as window resizing followed by device rotation, or rotation followed by device folding or unfolding.
Multi-window mode and multi-resume LS-M1 T3-4

App is fully functional in multi-window mode. See Support multi-window mode.

Note: Unity apps should be on Unity Long Term Support (LTS) version 2019 or later. See Multi-window mode verification.

LS-M2 T3-5, T3-6 App fully supports multi-resume. App updates its UI (continues playing media, incorporates new messages, updates download progress, etc.) when the app is not the top focused app. In addition, the app handles the loss of exclusive resources such as cameras and microphones in multi-window scenarios. See Activity lifecycle in multi-window mode.
Camera preview and media projection LS-CM1 T3-7 App provides camera preview in landscape and portrait orientations, folded and unfolded device states, and multi-window mode. Preview is properly proportioned and in the correct orientation.
LS-CM2 T3-8 App supports media projection in landscape and portrait orientations, folded and unfolded device states, and multi-window mode. Projection is properly proportioned and in the correct orientation.
Keyboard, mouse, and trackpad LS-I1 T3-9 App supports text input using external keyboard and switches between physical and virtual keyboards when an external keyboard is connected or disconnected without relaunching the app.
LS-I2 T3-10

App supports basic mouse or trackpad interactions:

  • Click: Any clickable element, including buttons, drop‑down menus, text entry fields, and navigation icons
  • Select: Any selectable element, including radio buttons, checkboxes, and text (by swiping or double clicking)
  • Scroll: Vertically and horizontally in scrollable elements such as lists and pickers
Stylus LS-S1 T3-11

App provides basic support for stylus‑equipped tablets, foldables, and ChromeOS devices. The stylus can be used to select and manipulate UI elements, including scrolling through lists, pickers, and other scrollable content.

See Stylus in Input compatibility on large screens.

Note: Basic stylus input is the same as touch input, which is fully supported by Android. All apps support basic stylus input with no special development required.

LS-S1.1 T3-12

On Android 14 (API level 34) and higher, users can write and edit text in text input fields using a stylus. On ChromeOS M114 and higher, a stylus can be used to write and edit text in text input fields in WebView components.

Note: On Android 14 and higher, EditText components support input using a stylus by default; no special development is required. On ChromeOS M114 and higher, WebView supports stylus input in text fields by default.

Tier 2 icon

TIER 2

Large screen optimized

Optimized apps fully support all screen types and device states, including state transitions.

Category ID Test Description
UX LS-U1 T2-1

App has responsive and adaptive layouts designed for large screens. All layouts are responsive (see Migrate your UI to responsive layouts). Implementation of adaptive layouts is determined by window size classes.

The app UI can include the following:

  • Leading‑edge navigation rails that expand on larger window sizes into full navigation panels
  • Grid layouts that scale the number of columns to accommodate window size changes
  • Columns of text on large screens
  • Trailing‑edge panels that are open by default on laptop and desktop screen sizes; closed, on smaller screens

Create two-pane layouts, where appropriate, to take advantage of the large screen space. See Canonical layouts.

Activity embedding enables activity-based apps to create multi‑pane layouts by displaying activities side by side.

LS-U2 T2-1

Modals, options menus, and other secondary elements are properly formatted on all screen types and device states, for example:

  • Bottom sheets are not full width on large screens. (Apply a maximum width to avoid stretching.) See Behavior in Sheets: bottom.
  • Buttons are not full width on large screens. See Behavior in Buttons.
  • Text fields and boxes do not stretch to full width on large screens. See Behavior in Text fields.
  • Small edit menus or modals do not cover the entire screen and maintain context for the user as much as possible. See Menus.
  • Options menus appear next to the item the user selected. See the "Contextual menu" topic in Menus.
  • Navigation rails replace navigation bars for better ergonomics. Rails can also complement other navigation components, such as navigation bars. See Navigation rail.
  • Navigation drawers are updated to the latest material component. See Navigation drawer.
  • Dialog boxes are updated to the latest material component. See Dialogs.
  • Images are displayed at a proper resolution and are not stretched or cropped.
LS-U3 T2-2 Touch targets are least 48dp. See the Material Design Layout and typography guidelines.
LS-U4 T2-3 A focused state is created for custom drawables that are interactive. A custom drawable is any visual UI element not provided by the Android framework. If users can interact with a custom drawable, the drawable must be focusable when the device is not in Touch Mode, and a visual indication of the focused state must be apparent.
Keyboard, mouse, and trackpad LS-I3 T2-4 The main task flows in the app support keyboard navigation, including Tab and arrow key navigation. See Build more accessible apps.
LS-I4 T2-5 App supports keyboard shortcuts for commonly used actions such as select, cut, copy, paste, undo, and redo. See Input compatibility.
LS-I5 T2-6 Keyboard can be used to control media playback; for example, the Spacebar plays and pauses media.
LS-I6 T2-7 Keyboard Enter key performs a send function in communication apps.
LS-I7 T2-8 Options menus are accessible by typical mouse and trackpad right‑click (secondary mouse button or secondary tap) behavior.
LS-I8 T2-9 App content can be zoomed using the mouse scroll wheel (in conjunction with pressing the Control, or Ctrl, key) and trackpad pinch gestures.
LS-I9 T2-10 Actionable UI elements have hover states (where appropriate) to indicate to mouse and trackpad users that the elements are interactive.

Tier 1 icon

TIER 1

Large screen differentiated

Large screen differentiated apps use the large screen form factor to its full potential. Differentiated apps offer a premium user experience that's productive and enjoyable.

Category ID Test Description
Multitasking and multi‑instance LS-M3 T1-1, T1-2, T1‑3

App supports various multitasking scenarios, for example:

  • Picture-in-picture mode: App is able to enter and exit picture-in-picture mode in portrait and landscape orientations, with the device folded and unfolded, and in multi-window mode. See Picture-in-picture (PiP) support.
  • Multi-window mode: App can open another application in a separate window from a deep link; for example, a contact management app opens a link to an email message which is displayed in an email app in a new window. See FLAG_ACTIVITY_LAUNCH_ADJACENT.
  • Attachments: Messaging apps can open attachments (such as videos) in a separate window.
LS-M4 T1-4 App is able to launch multiple instances of itself in separate windows. Use cases include document editing, web browsing, file management apps, and product comparisons in shopping apps. See Multi-instance in Support multi-window mode.
Foldable postures and states LS-F1 T1-5

App supports all foldable postures and related use cases:

  • Tabletop posture — Video calling and video or audio playback.
  • Book posture — Reading lengthy text content.
  • Dual display — Front and back screen preview for camera apps. Support for dual-screen devices.
See Learn about foldables.
LS-F2 T1-6 Camera apps adjust their preview for folded and unfolded states and support front and back screen preview.
Drag and drop LS-D1 T1-7 App supports drag and drop between views within the app and, in multi-window mode, to and from other apps using touch input, mouse, trackpad, and stylus. See Enable drag and drop. See also LS-S3.
Keyboard, mouse, and trackpad LS-I10 T1-8 App provides a comprehensive set of keyboard shortcuts while supporting conventional shortcuts such as Ctrl-C for copy and Ctrl-Z for undo. App maintains keyboard shortcut parity with equivalent web or desktop versions of the app whenever possible.
LS-I11 T1-9 Keyboard and mouse or trackpad combinations, such as Ctrl+click or Ctrl+tap and Shift+click or Shift+tap, provide enhanced capabilities, including the selection of ranges of adjacent items or multiple separated items.
LS-I12 T1-10 App displays a scrollbar while content is being scrolled using a mouse or trackpad.
LS-I13 T1-11 Where applicable, UI elements display additional content such as fly‑out menus or tooltips on mouse or trackpad hover. App maintains hover state parity with equivalent web or desktop versions of the app whenever possible.
LS-I14 T1-12 Desktop-style menus and context menus are used where appropriate.
LS-I15 T1-13 UI panels in multi-panel layouts are reconfigurable using a mouse or trackpad. Reconfigurable panels enable users to adjust the app layout for increased productivity, for example, by changing the size of the detail panel of a list-detail layout or by rearranging panels on screen. Note: This does not apply to navigation bars, rails, or drawers.
LS-I16 T1-14 Triple clicking or tapping using a mouse or trackpad selects entire lines or paragraphs of text.
Stylus LS-S2 T1-15 App supports drawing and writing with a stylus. Drawings and writing can be erased with the stylus.
LS-S3 T1-16 App provides stylus support for dragging and dropping content between views within the app and, in multi-window mode, to and from other apps. See Enable drag and drop.
LS-S4 T1-17

App provides enhanced stylus support, including:

  • Low latency and motion prediction to improve responsiveness
  • Pressure sensitivity for drawing strokes of varying width
  • Tilt detection for creating shading strokes
  • Palm and finger rejection to prevent stray marks
See Advanced stylus features.
Custom cursors LS-P1 T1-18

App displays customized cursors to indicate how and when users can interact with UI elements and content, for example:

  • System cursors provided by the Android framework
    • I-beam for text
    • Resize handles at resizable layer edges
    • Processing spinners
  • Specialty cursors that you provide
    • Crosshairs when hovering over targets in games
    • A magnifying glass when hovering over zoomable content
    • Tools in drawing or illustration apps
See PointerIcon and Mouse pointer icons.

Large screen compatibility tests

The following tests help you discover quality issues in your app. You can combine the tests or integrate groups of tests together in your own test plans.

For layout and UX purposes, test on at least the following device types:

  • Foldable (841x701 dp)
  • 8-inch tablet (1024x640 dp)
  • 10.5-inch tablet (1280x800 dp)
  • 13-inch Chromebook (1600x900 dp)

Use the following Android emulators to test large screen device compatibility:

  • Foldable phone — 7.6" Fold-in with outer display
  • Tablet — Pixel C 9.94"
  • Dual-display foldable — Microsoft Surface Duo

Tier 3 icon

TIER 3

Large screen ready

Category ID Feature Description
Configuration and continuity T3-1 LS-C1 Verify that the app is not letterboxed and is not running in compatibility mode in portrait and landscape orientations, in multi-window mode, or when a large screen foldable device is unfolded in portrait and landscape orientations.

Resize the app window in multi-window mode, including split-screen and desktop windowing modes. On ChromeOS devices, minimize and restore the app window, maximize and restore the app window. Verify that the app assumes the proper orientation and maintains state in all window sizes.

Note: Test on a large screen device (sw >= 600dp) running Android 12 (API level 31) or higher to ensure the device supports the following:

T3-2 LS-C1

From each app screen that has scrollable content, continuous playback content, or text entry fields, do the following:

  • Scrollable content: Scroll the content
  • Playback content: Begin playback
  • Text entry fields: Enter text in multiple fields

Rotate the device between landscape and portrait orientations, fold and unfold the device (if applicable), span and unspan your app across two screens (if you have a dual-screen device) and resize the app window in multi-window mode. Minimize and restore the app window on ChromeOS devices; maximize and restore the app window. Verify the following:

  • Scrollable content: The scroll position remains the same
  • Playback content: Playback resumes where it left off when the configuration change was initiated
  • Text entry fields: Previously entered text is retained in input fields
T3-3 LS-C2 From each app screen, perform combinations of rotating the device between landscape and portrait orientations, folding and unfolding the device (if applicable), and resizing the app window in multi-window mode.
Multi-window mode and multi-resume T3-4 LS-M1

Open the app in multi-window mode. Check whether the app is fully functional in all window sizes, device orientations, and foldable device states. Resize the app window in each orientation. For foldable devices, fold and unfold the device in each orientation.

Unity apps

Open an app other than your Unity app. Go to the Recents screen. Select the app icon and put the app in split-screen mode. Open your Unity app, which should launch in split-screen mode beside or below the first app. Go to the Home screen to hide the pair of apps. Go to the Recents screen. Select the split-screen app pair that includes your Unity app. Verify that the Unity app resumes its activity and the app's layout in the split-screen window is correct with all UI elements accessible.

T3-5 LS-M2 Open the app and initiate a process, such as playing a video, that continuously updates the app. Open another app and make the new app the top focused app. Verify that the non-focused app continues to update its content (for example, a video continues to play).
T3-6 LS-M2 In the app, open the camera or use the microphone. Open another app, and make the new app the top focused app. Verify that the non-focused app has relinquished the camera or mic. Make the original app the top focused app. Verify that the app has regained access to the camera or mic.
Camera preview and media projection T3-7 LS-CM1 Open the app full screen and in multi-window mode. Start the camera from within the app. Rotate the device between landscape and portrait orientations. For foldable devices, fold and unfold the device in each orientation. In multi-window mode, resize the app window. Verify that the camera preview is in the proper orientation and proportions in all device states and window sizes.
T3-8 LS-CM2 Open the app full screen and in multi-window mode. Start a media projection. Rotate the device between landscape and portrait orientations. For foldable devices, fold and unfold the device in each orientation. In multi-window mode, resize the app window. Verify that the media projection is in the proper orientation and proportions in all device states and window sizes.
Keyboard, mouse, and trackpad T3-9 LS-I1 For each app screen that has text entry fields, connect an external keyboard to the device and enter text with the external keyboard and the virtual keyboard. Disconnect the external keyboard and enter text with the virtual keyboard.
T3-10 LS-I2

For each app screen, connect a mouse and trackpad to the device. Perform basic mouse and trackpad interactions:

  • Click all clickable elements such as buttons, drop‑down menus, and text entry fields.
  • Select radio buttons and checkboxes. Select text by swiping and double clicking.
  • Scroll vertically and horizontally (if applicable) through lists, pickers, and so forth
Stylus T3-11 LS-S1 Using a stylus, navigate through the app, select UI elements, scroll through lists and pickers, and generally interact with the app.
T3-12 LS-S1.1 On Android 14 (API level 34) and higher, enter and edit text in text input fields using a stylus. The software keyboard should not appear. On ChromeOS M114 or higher, enter and edit text in text input fields in a WebView.

Tier 2 icon

TIER 2

Large screen optimized

Category ID Feature Description
UX T2-1 LS-U1, LS-U2

Run the app on devices that have a wide variety of screen sizes, including phones, foldable phones, small and large tablets, and ChromeOS devices. Run the app in multi-window mode on the devices.

Verify that the app layout responds and adapts to different screen and window sizes. Check whether the app expands and contracts navigation rails, scales the number of columns in grid layouts, flows text into columns, and so forth. Observe whether UI elements are formatted for both aesthetics and function.

For apps using activity embedding, test whether activities are displayed side by side on large screens, stacked on small screens.

T2-2 LS-U3 Verify that touch targets maintain a consistent, accessible size and position for all display sizes and configurations. For information on accessibility, see the Accessibility Scanner.
T2-3 LS-U4 On each app screen that contains an interactive custom drawable, verify that the drawable can be focused using an external keyboard, D‑pad, or other device that enables views to be focused. Verify that a visual indication of the focused state is apparent. For related information, see Touch Mode.
Keyboard, mouse, and trackpad T2-4 LS-I3 Navigate through the app's focusable components using the Tab and arrow keys of an external keyboard.
T2-5 LS-I4 Use keyboard shortcuts on an external keyboard to perform select, cut, copy, paste, undo, and redo actions.
T2-6 LS-I5 Use an external keyboard to start, stop, pause, rewind, and fast forward media playback.
T2-7 LS-I6 Use the Enter key of an external keyboard to send or submit data.
T2-8 LS-I7 Use the secondary mouse button or trackpad secondary tap capability to access the options menu of interactive elements.
T2-9 LS-I8 Use the mouse scroll wheel (in conjunction with the Control, or Ctrl, key) and trackpad pinch gestures to zoom content in and out.
T2-10 LS-I9 Hover the mouse or trackpad cursor over actionable UI elements to activate the element's hover state.

Tier 1 icon

TIER 1

Large screen differentiated

Category ID Feature Description
Multitasking and multi‑instance T1-1 LS-M3 Enter and exit picture-in-picture mode in portrait and landscape orientations, with the device folded and unfolded, and in multi-window mode. In multi-window mode, change the window size while picture-in-picture mode is active.
T1-2 LS-M3 In multi-window mode, open another app from within the app and display both apps side by side.
T1-3 LS-M3 Open and close attachments and notifications in portrait and landscape orientations, with the device folded and unfolded, and in multi-window mode.
T1-4 LS-M4 Launch multiple instances of the app in separate windows in portrait and landscape orientations, with the device folded and unfolded, and in multi-window mode.
Foldable postures and states T1-5 LS-F1 View the app in all foldable postures, including tabletop posture, book posture, and dual display (for example, Microsoft Surface Duo). Verify that UI elements transition to the optimal location (for example, media controllers move to the horizontal screen area in tabletop posture).
T1-6 LS-F2 Activate the camera from within the app. Verify that the camera preview is correct when the device is folded and unfolded and rotated to portrait and landscape orientations. With the device unfolded, verify that the preview is correct on front and back screens.
Drag and drop T1-7 LS-D1 Drag and drop images and text to drop targets within the app. In multi-window mode, drag and drop images and text between the app and another app (to and from both apps). Drag and drop the content using touch input, mouse, trackpad, and stylus (see also T1-16). Verify the functionality in portrait and landscape orientations and when the device is in a folded or unfolded state.
Keyboard, mouse, and trackpad T1-8 LS-I10 Change the app's keyboard shortcuts. Test the revised shortcuts using an external keyboard.
T1-9 LS-I11 Using an external keyboard, mouse, and trackpad, select items in the app's UI. Select multiple separated items and ranges of adjacent items using keyboard/mouse/trackpad actions such as Ctrl+click, Ctrl+tap, Shift+click, and Shift+tap.
T1-10 LS-I12 Scroll app content using a mouse and trackpad. Verify that a scrollbar appears while the content is scrolling.
T1-11 LS-I13 Using a mouse and trackpad, hover the pointer over UI elements that contain cascading or pop-up content. Verify that the additional content is revealed.
T1-12 LS-I14 On laptop and desktop displays, verify that desktop-style menus and context menus are used.
T1-13 LS-I15 On each app screen, resize and rearrange UI panels using a mouse and trackpad.
T1-14 LS-I16 Using a mouse and trackpad, triple click or tap to select items in the app, for example, to select full lines of text.
Stylus T1-15 LS-S2 Draw and write within the app using a stylus. Erase drawings and writing using the stylus.
T1-16 LS-S3 Using a stylus, drag and drop content to drop targets within the app. In multi-window mode, drag and drop content between the app and another app (to and from both apps).
T1-17 LS-S4

Interact with the app using a stylus as follows:

  • As you draw, observe the latency between the current stylus position and the last rendered stroke.
  • Draw with varying amounts of stylus pressure. Check whether the width of the strokes changes as the pressure changes. More pressure should produce thicker strokes.
  • Tilt the stylus as you draw; shading strokes should be produced. The more the stylus is tilted, the wider and lighter the shading strokes should be.
  • Let your fingers and palm touch the screen as you draw. The finger and palm touches should not produce marks.
Custom cursors T1-18 LS-P1

Interact with the app using a mouse and trackpad. Verify that custom cursors appear where appropriate, for example:

  • I-beam for text entry fields
  • Resize handles at resizable layer edges
  • Spinners when app is performing long-running tasks