Mendukung multi-aplikasi

Di Android 7.0 dan yang lebih baru, perangkat dapat menampilkan beberapa aplikasi secara bersamaan menggunakan multi-aplikasi. Android mendukung tiga konfigurasi multi-aplikasi:

  • Format bebas memungkinkan pengguna mengubah ukuran panel aktivitas secara dinamis dan memiliki lebih dari dua aplikasi yang terlihat di layar mereka.
  • Layar terpisah adalah implementasi multi-aplikasi default, yang menyediakan dua panel aktivitas tempat pengguna dapat menempatkan aplikasi.
  • Picture-in-picture (PIP) memungkinkan perangkat Android memutar konten video di jendela kecil saat pengguna berinteraksi dengan aplikasi lain.

Implementasi

Dukungan multi-aplikasi diaktifkan secara default di Android 7.0 dan yang lebih tinggi. Untuk menonaktifkannya, tetapkan tanda config_supportsMultiWindow ke false dalam file config.xml perangkat Anda.

Multi-aplikasi dinonaktifkan secara default di semua perangkat dengan RAM rendah (perangkat yang mendeklarasikan ActivityManager.isLowRam()). Perangkat dengan RAM rendah mengabaikan nilai tanda config_supportsMultiWindow.

Freeform

Setelah mengaktifkan mode multi-aplikasi dengan flag config_supportsMultiWindow, produsen perangkat dapat mengizinkan jendela bentuk bebas. Mode ini paling berguna di perangkat yang lebih besar, seperti tablet.

Untuk mendukung mode bentuk bebas, aktifkan fitur sistem PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT di /android/frameworks/base/core/java/android/content/pm/PackageManager.java dan tetapkan config_freeformWindowManagement ke true di config.xml.

    <bool name="config_freeformWindowManagement">true</bool>
    

Di Android 16, OEM dapat mendukung jendela desktop di perangkat mereka untuk konfigurasi multi-aplikasi bentuk bebas menggunakan Aktifkan jendela desktop.

Mengaktifkan mode jendela desktop

Ikuti langkah-langkah berikut untuk mengaktifkan jendela desktop di perangkat Anda:

  • Pastikan perangkat Anda mendukung jendela bebas.
  • Tetapkan flag overlay konfigurasi config_isDesktopModeSupported ke true di config.xml:
        <bool name="config_isDesktopModeSupported">true</bool>
        
  • Untuk mengaktifkan windowing freeform di layar internal perangkat Anda, tetapkan flag overlay konfigurasi config_canInternalDisplayHostDesktops ke true di config.xml. Flag ini diabaikan jika config_isDesktopModeSupported adalah false:
          <bool name="config_canInternalDisplayHostDesktops">true</bool>
          
Mengaktifkan batas tugas

Ikuti langkah-langkah berikut untuk mengonfigurasi jumlah maksimum tugas yang didukung dalam jendela desktop:

  1. Aktifkan tampilan desktop.
  2. Tetapkan flag overlay konfigurasi config_maxDesktopWindowingActiveTasks di config.xml ke jumlah maksimum tugas yang didukung. Untuk mendukung tugas dalam jumlah yang tidak terbatas, tetapkan tanda ke nilai default 0:
            <bool name="config_maxDesktopWindowingActiveTasks">4</integer>
            

Layar terpisah

Pengalaman default multi-aplikasi adalah mode layar terpisah, dengan UI Sistem dibagi di bagian tengah perangkat dalam mode potret atau lanskap. Pengguna dapat mengubah ukuran jendela dengan menarik garis pembagi dari sisi ke sisi atau dari atas ke bawah, bergantung pada orientasi perangkat.

Setelah mengaktifkan layar terpisah, produsen perangkat dapat memilih untuk mengaktifkan bentuk bebas atau PIP.

Android 8.0 dan yang lebih tinggi meningkatkan layar terpisah dengan mengompresi peluncur saat pengguna mengetuk Beranda. Untuk mengetahui detail penerapannya, lihat Interaksi layar terpisah.

Picture-in-picture

Setelah mengaktifkan mode multi-aplikasi dengan tanda config_supportsMultiWindow, produsen perangkat dapat mendukung picture-in-picture, yang memungkinkan pengguna menonton video sambil menjelajahi aktivitas lain. Meskipun fitur ini ditargetkan untuk perangkat Android TV, jenis perangkat lainnya mungkin mendukung fitur ini.

Untuk mendukung PIP, aktifkan fitur sistem PackageManager#FEATURE_PICTURE_IN_PICTURE di /android/frameworks/base/core/java/android/content/pm/PackageManager.java.

Untuk mengetahui detail penerapan PIP selengkapnya bagi perangkat yang menjalankan Android 8.0 dan yang lebih baru,lihat halaman Picture-in-picture.

UI Sistem

Mendukung semua UI Sistem standar sesuai dengan Dokumentasi developer multi-aplikasi.

Aplikasi

Untuk mendukung mode multi-aplikasi untuk aplikasi yang dimuat sebelumnya, lihat dokumentasi developer Android.

Validasi

Untuk memvalidasi penerapan multi-aplikasi, jalankan pengujian CTS terkait dan ikuti petunjuk pengujian untuk multi-aplikasi.

Versi Android Pengujian CTS
7,0 /platform/cts/hostsidetests/services/activitymanager/src/android/server/cts
8.0 /platform/cts/hostsidetests/services/activityandwindowmanager/activitymanager/src/android/server/cts
9.0 /platform/cts/tests/framework/base/activitymanager/src/android/server/am
10.0 dan yang lebih baru /platform/cts/tests/framework/base/windowmanager/src/android/server/wm