<aplikasi>

sintaksis:
<application android:allowTaskReparenting=["true" | "false"]
             android:allowBackup=["true" | "false"]
             android:allowClearUserData=["true" | "false"]
             android:allowCrossUidActivitySwitchFromBelow=["true" | "false"]
             android:allowNativeHeapPointerTagging=["true" | "false"]
             android:appCategory=["accessibility" | "audio" | "game" |
             "image" | "maps" | "news" | "productivity" | "social" | "video"]
             android:backupAgent="string"
             android:backupInForeground=["true" | "false"]
             android:banner="drawable resource"
             android:dataExtractionRules="string resource"
             android:debuggable=["true" | "false"]
             android:description="string resource"
             android:enabled=["true" | "false"]
             android:extractNativeLibs=["true" | "false"]
             android:fullBackupContent="string"
             android:fullBackupOnly=["true" | "false"]
             android:gwpAsanMode=["always" | "never"]
             android:hasCode=["true" | "false"]
             android:hasFragileUserData=["true" | "false"]
             android:hardwareAccelerated=["true" | "false"]
             android:icon="drawable resource"
             android:isGame=["true" | "false"]
             android:isMonitoringTool=["parental_control" | "enterprise_management" |
             "other"]
             android:killAfterRestore=["true" | "false"]
             android:largeHeap=["true" | "false"]
             android:label="string resource"
             android:logo="drawable resource"
             android:manageSpaceActivity="string"
             android:name="string"
             android:networkSecurityConfig="xml resource"
             android:permission="string"
             android:persistent=["true" | "false"]
             android:process="string"
             android:restoreAnyVersion=["true" | "false"]
             android:requestLegacyExternalStorage=["true" | "false"]
             android:requiredAccountType="string"
             android:resizeableActivity=["true" | "false"]
             android:restrictedAccountType="string"
             android:supportsRtl=["true" | "false"]
             android:taskAffinity="string"
             android:testOnly=["true" | "false"]
             android:theme="resource or theme"
             android:uiOptions=["none" | "splitActionBarWhenNarrow"]
             android:usesCleartextTraffic=["true" | "false"]
             android:vmSafeMode=["true" | "false"] >
    . . .
</application>
terdapat dalam:
<manifest>
dapat berisi:
<activity>
<activity-alias>
<meta-data>
<service>
<receiver>
<profileable>
<provider>
<uses-library>
<uses-native-library>
deskripsi:

Deklarasi aplikasi. Elemen ini berisi sub-elemen yang mendeklarasikan setiap komponen aplikasi dan memiliki atribut yang dapat memengaruhi semua komponen.

Beberapa atribut ini, seperti icon, label, permission, process , taskAffinity, dan allowTaskReparenting, menetapkan nilai default untuk atribut yang sesuai dari elemen komponen. Atribut lainnya, seperti debuggable, enabled, description, dan allowClearUserData, menetapkan nilai untuk aplikasi secara keseluruhan dan tidak diganti oleh komponen.

atribut
android:allowTaskReparenting
Apakah aktivitas yang ditetapkan oleh aplikasi dapat dipindahkan dari tugas yang memulainya ke tugas yang memiliki afinitas saat tugas tersebut selanjutnya dipindah ke depan. "true" jika aktivitas dapat dipindah, dan "false" jika aktivitas harus tetap dengan tugas tempat aktivitas memulai. Nilai defaultnya adalah "false".

Elemen <activity> memiliki atribut allowTaskReparenting tersendiri yang dapat menggantikan nilai yang ditetapkan di sini.

android:allowBackup

Apakah mengizinkan aplikasi berpartisipasi dalam pencadangan dan pemulihan infrastruktur. Jika atribut ini ditetapkan ke "false", tidak ada pencadangan atau pemulihan aplikasi yang akan dijalankan, bahkan oleh pencadangan sistem menyeluruh yang menyebabkan semua data aplikasi disimpan menggunakan adb. Nilai default atribut ini adalah "true".

Catatan: Untuk aplikasi yang menargetkan Android 12 (API level 31) atau yang lebih tinggi, perilaku ini bervariasi. Di perangkat dari beberapa produsen perangkat, Anda tidak dapat menonaktifkan migrasi antarperangkat dari file aplikasi Anda.

Namun, Anda dapat menonaktifkan pencadangan dan pemulihan berbasis cloud untuk file aplikasi dengan menetapkan atribut ini ke "false", meskipun aplikasi menargetkan Android 12 (level API 31) atau yang lebih tinggi.

Untuk mengetahui informasi selengkapnya, lihat bagian pencadangan dan pemulihan di halaman yang menjelaskan perubahan perilaku untuk aplikasi yang menargetkan Android 12 (level API 31) atau yang lebih tinggi.

android:allowClearUserData

Apakah mengizinkan aplikasi mereset data pengguna. Data ini meliputi flag, seperti apakah pengguna telah melihat tooltip pengantar, serta setelan dan preferensi yang dapat disesuaikan pengguna. Nilai default atribut ini adalah "true".

Catatan: Hanya aplikasi yang merupakan bagian dari image sistem yang dapat mendeklarasikan atribut ini secara eksplisit. Pihak ketiga tidak dapat menyertakan atribut ini dalam file manifesnya.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan pencadangan data.

android:allowCrossUidActivitySwitchFromBelow

Menentukan apakah aktivitas di bawah ini dalam tugas juga dapat memulai aktivitas lain atau menyelesaikan tugas.

Mulai dari Target SDK Level Build.VERSION_CODES.VANILLA_ICE_CREAM, aplikasi mungkin diblokir sehingga tidak dapat memulai aktivitas baru atau menyelesaikan tugas mereka kecuali jika aktivitas teratas tugas tersebut milik UID yang sama untuk alasan keamanan.

Menyetel tanda ini ke true akan memungkinkan aplikasi yang diluncurkan untuk mengabaikan pembatasan jika aktivitas ini berada di atas. Aplikasi yang cocok dengan UID aktivitas ini selalu dikecualikan.

Untuk mengetahui informasi selengkapnya, lihat Peluncuran aktivitas latar belakang yang aman.

android:allowNativeHeapPointerTagging

Apakah aplikasi mengaktifkan fitur pemberian tag pointer Heap. Nilai default atribut ini adalah "true".

Catatan: Menonaktifkan fitur ini tidak mengatasi masalah kesehatan kode yang mendasarinya. Perangkat hardware mendatang mungkin tidak mendukung tag manifes ini.

Untuk mengetahui informasi selengkapnya, lihat Pointer yang Diberi Tag.

android:appCategory

Mendeklarasikan kategori aplikasi ini. Kategori digunakan untuk mengelompokkan beberapa aplikasi menjadi beberapa grup yang bermakna, seperti saat merangkum penggunaan baterai, jaringan, atau disk. Hanya tentukan nilai ini untuk aplikasi yang cocok dengan salah satu kategori tertentu.

Harus berupa salah satu dari nilai konstanta berikut.

NilaiDeskripsi
accessibilityAplikasi yang umumnya merupakan aplikasi aksesibilitas, seperti pembaca layar.
audioAplikasi yang umumnya berfungsi dengan audio atau musik, seperti pemutar musik.
gameAplikasi yang umumnya merupakan game.
imageAplikasi yang umumnya berfungsi dengan gambar atau foto, seperti aplikasi kamera atau galeri.
mapsAplikasi yang umumnya memetakan aplikasi, seperti aplikasi navigasi.
newsAplikasi yang umumnya merupakan aplikasi berita, seperti aplikasi koran, majalah, atau olahraga.
productivityAplikasi yang umumnya merupakan aplikasi produktivitas, seperti penyimpanan cloud atau aplikasi kerja.
socialAplikasi yang umumnya merupakan aplikasi sosial, seperti aplikasi pesan, komunikasi, email, atau jaringan sosial.
videoAplikasi yang umumnya berfungsi dengan video atau film, seperti aplikasi video streaming.

android:backupAgent
Nama class yang menerapkan agen pencadangan aplikasi, subclass dari BackupAgent. Nilai atribut adalah nama class yang sepenuhnya memenuhi syarat, seperti "com.example.project.MyBackupAgent". Namun, sebagai penyingkat, jika karakter pertama dari nama tersebut adalah titik, misalnya ".MyBackupAgent", karakter itu ditambahkan ke nama paket yang ditetapkan dalam elemen <manifest>.

Tidak ada default untuknya. Nama harus spesifik.

android:backupInForeground
Menunjukkan bahwa operasi Pencadangan Otomatis dapat dilakukan di aplikasi ini meskipun aplikasi berada dalam status yang setara latar depan. Sistem menonaktifkan aplikasi selama melakukan pencadangan otomatis, jadi gunakan atribut ini dengan hati-hati. Menyetel flag ini ke "true" dapat memengaruhi perilaku aplikasi saat aplikasi aktif.

Nilai defaultnya adalah "false", yang berarti bahwa OS tidak mencadangkan aplikasi saat aplikasi berjalan di latar depan, seperti aplikasi musik yang secara aktif memutar musik menggunakan layanan di status startForeground().

android:banner
Resource drawable menyediakan banner grafis yang diperluas untuk item terkait. Gunakan dengan tag <application> untuk menyediakan banner default bagi semua aktivitas aplikasi, atau dengan tag <activity> untuk menyediakan banner bagi aktivitas tertentu.

Sistem menggunakan banner ini untuk merepresentasikan aplikasi di layar utama Android TV. Oleh karena itu, hanya tentukan nilai ini untuk aplikasi dengan aktivitas yang menangani intent CATEGORY_LEANBACK_LAUNCHER.

Atribut ini ditetapkan sebagai referensi untuk resource drawable yang berisi image, misalnya "@drawable/banner". Tidak ada banner default.

Untuk mengetahui informasi selengkapnya, lihat Menyediakan banner layar utama.

android:dataExtractionRules

Aplikasi dapat menetapkan atribut ini ke resource XML tempat aplikasi tersebut menentukan aturan yang menentukan file dan direktori yang dapat disalin dari perangkat sebagai bagian dari operasi transfer atau pencadangan.

Untuk mengetahui informasi tentang format file XML, lihat Pencadangan dan pemulihan.

android:debuggable
Apakah aplikasi dapat di-debug, bahkan saat dijalankan di perangkat dalam mode pengguna. "true" jika ya, dan "false" jika tidak. Nilai defaultnya adalah "false".
android:description
Teks yang dapat dibaca pengguna tentang aplikasi, yang lebih panjang dan lebih deskriptif daripada label aplikasi. Nilai ditetapkan sebagai referensi ke resource string. Tidak seperti label, teks ini tidak boleh berupa string mentah. Tidak ada nilai default.
android:enabled
Apakah sistem Android dapat membuat instance aplikasi. "true" jika ya, dan "false" jika tidak. Jika nilainya "true", atribut enabled masing-masing komponen akan menentukan apakah komponen diaktifkan atau tidak. Jika nilainya "false", atribut akan menggantikan nilai khusus komponen, dan semua komponen dinonaktifkan.

Nilai default-nya adalah "true".

android:extractNativeLibs

Mulai dari AGP 4.2.0, opsi DSL useLegacyPackaging menggantikan atribut manifes extractNativeLibs. Gunakan useLegacyPackaging di file build.gradle aplikasi dan bukan extractNativeLibs di file manifes untuk mengonfigurasi perilaku kompresi library native. Untuk mengetahui informasi selengkapnya, lihat catatan rilis Menggunakan DSL untuk memaketkan library native terkompresi.

Atribut ini menunjukkan apakah penginstal paket mengekstrak library native dari APK ke sistem file. Jika ditetapkan ke "false", library native Anda akan disimpan tanpa kompresi di APK. Meskipun APK mungkin lebih besar, aplikasi dimuat lebih cepat karena library dimuat langsung dari APK saat runtime.

Nilai default extractNativeLibs bergantung pada minSdkVersion dan versi AGP yang Anda gunakan. Pada umumnya, perilaku default mungkin seperti yang Anda inginkan, dan Anda tidak perlu menetapkan atribut ini secara eksplisit.

android:fullBackupContent
Atribut ini mengarah ke file XML yang berisi aturan pencadangan lengkap untuk Pencadangan Otomatis. Aturan ini menentukan file yang akan dicadangkan. Untuk mengetahui informasi selengkapnya, lihat sintaksis konfigurasi XML untuk Pencadangan Otomatis.

Atribut ini bersifat opsional. Jika tidak ditentukan, secara default, Pencadangan Otomatis akan menyertakan hampir semua file aplikasi Anda. Untuk mengetahui informasi selengkapnya, lihat File yang dicadangkan.

android:fullBackupOnly
Atribut ini menunjukkan apakah akan menggunakan Pencadangan Otomatis di perangkat tempatnya tersedia. Jika ditetapkan ke "true", aplikasi akan melakukan Pencadangan Otomatis saat diinstal di perangkat yang menjalankan Android 6.0 (API level 23) atau yang lebih tinggi. Di perangkat yang lebih lama, aplikasi Anda mengabaikan atribut ini dan menjalankan pencadangan kunci/nilai.

Nilai default-nya adalah "false".

android:gwpAsanMode
Atribut ini menunjukkan apakah akan menggunakan GWP-ASan, fitur alokator memori native yang membantu menemukan bug use-after-free dan heap-buffer-overflow.

Nilai default-nya adalah "never".

android:hasCode
Apakah aplikasi berisi kode DEX apa pun—yaitu, kode yang menggunakan Bahasa pemrograman Kotlin atau Java. "true" jika ya dan "false" jika tidak. Jika nilai "false", sistem tidak akan mencoba memuat aplikasi ketika meluncurkan komponen. Nilai defaultnya adalah "true".

Jika aplikasi menyertakan kode native (C/C++), tetapi tidak ada kode DEX, kode ini harus ditetapkan ke "false". Jika ditetapkan ke "true" saat APK tidak berisi kode DEX, aplikasi mungkin gagal dimuat.

Properti ini harus memperhitungkan kode yang disertakan dalam permohonan dengan dependensi. Jika aplikasi bergantung pada AAR yang menggunakan Kode Java/Kotlin, atau secara langsung di JAR, app:hasCode harus "true", atau dihilangkan karena itu merupakan default.

Misalnya, aplikasi Anda mungkin mendukung Play feature delivery dan menyertakan modul fitur yang tidak menghasilkan file DEX apa pun, yang merupakan bytecode yang dioptimalkan untuk platform Android. Jika demikian, Anda harus menetapkan properti ini ke "false" dalam file manifes modul guna menghindari error runtime.

android:hasFragileUserData
Apakah akan menampilkan permintaan kepada pengguna untuk menyimpan data aplikasi saat pengguna meng-uninstal aplikasi. Nilai defaultnya adalah "false".
android:hardwareAccelerated
Apakah rendering berakselerasi hardware diaktifkan untuk semua aktivitas dan tampilan dalam aplikasi ini. "true" jika diaktifkan, dan "false" jika belum. Nilai defaultnya adalah "true" jika Anda menetapkan minSdkVersion atau targetSdkVersion ke "14" atau lebih tinggi. Jika tidak, "false".

Mulai Android 3.0 (level API 11), perender OpenGL berakselerasi hardware tersedia untuk aplikasi guna meningkatkan performa untuk berbagai operasi grafis 2D yang umum. Jika perender berakselerasi hardware diaktifkan, sebagian besar operasi di Canvas, Paint, Xfermode, ColorFilter, Shader, dan Camera akan dipercepat.

Percepatan ini menghasilkan animasi yang lebih halus, scroll yang lebih mulus, dan peningkatan responsivitas secara keseluruhan, bahkan untuk aplikasi yang tidak menggunakan library OpenGL framework secara eksplisit.

Tidak semua operasi 2D OpenGL diakselerasi. Jika mengaktifkan perender berakselerasi hardware, uji aplikasi Anda agar aplikasi dapat memanfaatkan perender tanpa error.

Untuk informasi selengkapnya, baca Akselerasi hardware kami.

android:icon
Ikon untuk aplikasi secara keseluruhan, dan ikon default untuk setiap komponen aplikasi. Lihat masing-masing atribut icon untuk elemen <activity>, <activity-alias>, <service>, <receiver>, dan <provider>.

Atribut ini ditetapkan sebagai referensi ke resource drawable yang berisi image, seperti "@drawable/icon". Tidak ada ikon default.

android:isGame
Apakah aplikasi berupa game. Sistem dapat mengelompokkan aplikasi yang diklasifikasikan sebagai game atau menampilkannya secara terpisah dari aplikasi lain. Defaultnya adalah "false".
android:isMonitoringTool

Menunjukkan bahwa aplikasi ini dirancang untuk memantau orang lain.

Catatan: Jika aplikasi mendeklarasikan atribut ini dalam manifesnya, developer harus mengikuti kebijakan Stalkerware untuk memublikasikan aplikasi ke Google Play.

Tidak ada nilai default. Developer harus menentukan salah satu nilai berikut:

NilaiDeskripsi
"parental_control"Aplikasi mengakomodasi kontrol orang tua dan secara khusus ditargetkan untuk orang tua yang ingin membuat anak-anaknya tetap aman.
"enterprise_management"Aplikasi mengakomodasi perusahaan yang ingin mengelola dan melacak perangkat yang diberikan kepada karyawan.
"other"Aplikasi mengakomodasi kasus penggunaan yang tidak disebutkan dalam tabel ini.
android:killAfterRestore

Apakah aplikasi dihentikan setelah pengaturan telah dipulihkan selama operasi pemulihan sistem menyeluruh. Operasi pemulihan satu paket tidak pernah menyebabkan aplikasi dinonaktifkan. Operasi pemulihan sistem menyeluruh biasanya hanya terjadi sekali, saat ponsel pertama kali disiapkan. Aplikasi pihak ketiga biasanya tidak perlu menggunakan atribut ini.

Defaultnya adalah "true", artinya setelah aplikasi selesai memproses datanya selama pemulihan sistem menyeluruh, aplikasi akan dihentikan.

android:largeHeap

Apakah proses aplikasi dibuat dengan heap Dalvik besar. Ini berlaku untuk semua proses yang dibuat untuk aplikasi. Hal ini hanya berlaku untuk aplikasi pertama yang dimuat ke dalam proses. Jika Anda menggunakan ID pengguna bersama untuk mengizinkan beberapa aplikasi menggunakan proses, semua aplikasi tersebut harus menggunakan opsi ini secara konsisten untuk menghindari hasil yang tidak dapat diprediksi.

Sebagian besar aplikasi tidak memerlukan ini dan sebagai gantinya, berfokus untuk mengurangi penggunaan memori secara keseluruhan untuk meningkatkan performa. Hal ini juga tidak menjamin peningkatan yang pasti pada memori yang tersedia, karena beberapa perangkat dibatasi oleh total memori yang tersedia.

Untuk mengkueri ukuran memori yang tersedia pada runtime, gunakan metode getMemoryClass() atau getLargeMemoryClass().

android:label
Label yang dapat dibaca pengguna untuk aplikasi secara keseluruhan, dan label default untuk setiap komponen aplikasi. Lihat masing-masing atribut label untuk elemen <activity>, <activity-alias>, <service>, <receiver>, dan <provider>.

Label ini ditetapkan sebagai referensi ke resource string sehingga dapat dilokalkan seperti string lain pada antarmuka pengguna. Namun, untuk memudahkan Anda mengembangkan aplikasi, label ini juga dapat ditetapkan sebagai string mentah.

android:logo
Logo untuk aplikasi secara keseluruhan, dan logo default untuk aktivitas. Atribut ini ditetapkan sebagai referensi ke resource drawable yang berisi image, seperti "@drawable/logo". Tidak ada logo default.
android:manageSpaceActivity
Nama subclass Activity yang sepenuhnya memenuhi syarat dan diluncurkan sistem untuk memungkinkan pengguna mengelola memori yang dipakai oleh aplikasi di perangkat. Aktivitas ini juga dideklarasikan dengan elemen <activity>.
android:name
Nama subclass Application yang sepenuhnya memenuhi syarat yang diterapkan untuk aplikasi. Saat proses aplikasi dimulai, class ini dibuat instance-nya sebelum memuat komponen aplikasi lainnya.

Subclass bersifat opsional. Sebagian besar aplikasi tidak memerlukannya. Jika tidak terdapat subclass, Android menggunakan instance class Application dasar.

android:networkSecurityConfig

Menentukan nama file XML yang berisi Konfigurasi keamanan jaringan aplikasi Anda. Nilainya merupakan referensi ke file resource XML yang berisi konfigurasi.

Atribut ini ditambahkan di API level 24.

android:permission
Nama izin yang diperlukan klien untuk berinteraksi dengan aplikasi. Atribut ini adalah cara yang mudah untuk menetapkan izin yang berlaku untuk semua komponen aplikasi. Atribut ini ditimpa dengan menetapkan atribut permission masing-masing komponen.

Untuk mengetahui informasi selengkapnya tentang izin, lihat bagian Izin di ringkasan manifes aplikasi dan Tips keamanan.

android:persistent
Apakah aplikasi akan tetap berjalan setiap saat. "true" jika ya dan "false" jika tidak. Nilai defaultnya adalah "false". Aplikasi biasanya tidak menetapkan flag ini. Mode persistensi hanya ditujukan untuk aplikasi sistem tertentu.
android:process
Nama proses dengan semua komponen aplikasi dijalankan. Setiap komponen dapat menimpa nilai default ini dengan menetapkan atribut process-nya sendiri.

Secara default, Android membuat proses untuk aplikasi saat komponen pertama perlu dijalankan. Semua komponen kemudian dijalankan dalam proses tersebut. Nama proses default cocok dengan nama paket yang ditetapkan oleh elemen <manifest>.

Dengan menetapkan atribut ini ke nama proses yang dibagikan dengan aplikasi lain, Anda dapat mengatur agar komponen kedua aplikasi berjalan dalam proses yang sama, tetapi hanya jika kedua aplikasi tersebut juga berbagi ID pengguna dan ditandatangani dengan sertifikat yang sama.

Jika nama yang ditetapkan untuk atribut ini diawali dengan titik dua (:), proses baru, khusus untuk aplikasi, akan dibuat saat diperlukan. Jika nama proses dimulai dengan karakter huruf kecil, proses global dari nama tersebut akan dibuat. Proses global dapat dibagikan dengan aplikasi lain, sehingga mengurangi penggunaan resource.

android:restoreAnyVersion
Menunjukkan bahwa aplikasi disiapkan untuk mencoba memulihkan set data yang dicadangkan, meskipun cadangannya disimpan oleh versi terbaru aplikasi, bukan versi yang saat ini terinstal di perangkat. Dengan menetapkan atribut ini ke "true", Pengelola Pencadangan akan mencoba memulihkan, bahkan saat ketidakcocokan versi menunjukkan bahwa data tidak kompatibel. Gunakan dengan hati-hati!

Nilai default atribut ini adalah "false".

android:requestLegacyExternalStorage

Apakah aplikasi ingin memilih untuk tidak menggunakan penyimpanan terbatas.

Catatan: Bergantung pada perubahan yang terkait dengan kebijakan atau kompatibilitas aplikasi, sistem mungkin tidak memenuhi permintaan pilihan tidak ikut ini.

android:requiredAccountType
Menentukan jenis akun yang diperlukan oleh aplikasi agar berfungsi. Jika aplikasi Anda memerlukan Account, nilai untuk atribut ini harus sesuai dengan jenis pengautentikasi akun yang digunakan oleh aplikasi Anda, seperti yang ditetapkan oleh AuthenticatorDescription, seperti "com.google".

Nilai defaultnya adalah null dan menunjukkan bahwa aplikasi dapat berfungsi tanpa akun apa pun.

Karena profil yang dibatasi tidak dapat menambahkan akun, menentukan atribut ini akan membuat aplikasi Anda tidak tersedia dari profil yang dibatasi, kecuali jika Anda juga mendeklarasikan android:restrictedAccountType dengan nilai yang sama.

Perhatian: Jika data akun dapat mengungkapkan informasi identitas pribadi, Anda harus mendeklarasikan atribut ini dan menetapkan null untuk android:restrictedAccountType, sehingga profil yang dibatasi tidak dapat menggunakan aplikasi Anda untuk mengakses informasi pribadi pengguna pemilik.

Atribut ini ditambahkan di API level 18.

android:resizeableActivity

Menentukan apakah aplikasi mendukung mode multi-aplikasi. Anda dapat menetapkan atribut ini baik dalam elemen <activity> atau <application>.

Jika Anda menetapkan atribut ini ke "true", pengguna dapat meluncurkan aktivitas dalam mode layar terpisah dan format bebas. Jika Anda menyetel atribut ke "false", aplikasi tidak dapat diuji atau dioptimalkan untuk lingkungan multi-aplikasi. Sistem masih dapat menempatkan aktivitas dalam mode multi-aplikasi dengan mode kompatibilitas yang diterapkan.

Mengatur atribut ini ke "true" tidak menjamin bahwa tidak ada aplikasi lain dalam mode multi-aplikasi yang terlihat di layar, seperti picture-in-picture, atau di tampilan lain. Oleh karena itu, menyetel tanda ini tidak berarti aplikasi Anda memiliki akses resource eksklusif.

Untuk aplikasi yang menargetkan API level 24 atau yang lebih tinggi, defaultnya adalah "true".

Jika aplikasi Anda menargetkan API level 31 atau yang lebih tinggi, atribut ini berfungsi secara berbeda pada layar kecil dan besar:

  • Layar besar (sw >= 600 dp): semua aplikasi mendukung mode multi-aplikasi. Atribut ini menunjukkan apakah aplikasi dapat diubah ukurannya, bukan apakah aplikasi mendukung mode multi-aplikasi. Jika resizeableActivity="false", aplikasi dialihkan ke mode kompatibilitas saat diperlukan agar sesuai dengan dimensi tampilan.
  • Layar kecil (sw < 600 dp): jika resizeableActivity="true" serta lebar dan tinggi minimum aktivitas utama berada dalam persyaratan multi-aplikasi, aplikasi akan mendukung mode multi-aplikasi. Jika resizeableActivity="false", aplikasi tidak mendukung mode multi-aplikasi, terlepas dari lebar dan tinggi minimum aktivitas.

Catatan: Produsen perangkat dapat mengganti perilaku API level 31.

Atribut ini ditambahkan di API level 24.

Catatan: Nilai aktivitas root tugas diterapkan ke semua aktivitas tambahan yang diluncurkan dalam tugas. Artinya, jika aktivitas root tugas dapat diubah ukurannya, sistem akan memperlakukan semua aktivitas lain dalam tugas sebagai dapat diubah ukurannya. Jika aktivitas root tidak dapat diubah ukurannya, aktivitas lain dalam tugas tidak dapat diubah ukurannya.

android:restrictedAccountType
Menentukan jenis akun yang diperlukan oleh aplikasi ini dan menunjukkan bahwa profil yang dibatasi dapat mengakses akun milik pengguna pemilik tersebut. Jika aplikasi Anda memerlukan Account dan profil yang dibatasi dapat mengakses akun pengguna utama, nilai untuk atribut ini harus sesuai dengan jenis pengautentikasi akun yang digunakan oleh aplikasi, sebagaimana ditetapkan oleh AuthenticatorDescription, seperti "com.google".

Nilai defaultnya adalah null dan menunjukkan bahwa aplikasi bisa berfungsi tanpa akun apa pun.

Perhatian: Dengan menentukan atribut ini, profil yang dibatasi dapat menggunakan aplikasi Anda dengan akun pengguna pemilik, yang dapat mengungkapkan informasi identitas pribadi. Jika akun mungkin mengungkapkan detail pribadi, jangan menggunakan atribut ini. Sebagai gantinya, deklarasikan atribut android:requiredAccountType agar aplikasi Anda tidak tersedia untuk profil yang dibatasi.

Atribut ini ditambahkan di API level 18.

android:supportsRtl

Mendeklarasikan apakah aplikasi Anda dapat mendukung tata letak kanan ke kiri (RTL).

Jika ini disetel ke "true" dan targetSdkVersion diatur ke 17 atau lebih tinggi, berbagai API RTL diaktifkan dan digunakan oleh sistem sehingga aplikasi Anda bisa menampilkan tata letak RTL. Jika parameter ini disetel ke "false" atau jika targetSdkVersion disetel ke 16 atau lebih rendah, API RTL akan diabaikan atau tidak berpengaruh, dan aplikasi Anda akan berperilaku sama, terlepas dari arah tata letak yang terkait pilihan lokal pengguna. Artinya, tata letak Anda selalu dari kiri ke kanan.

Nilai default atribut ini adalah "false".

Atribut ini ditambahkan di API level 17.

android:taskAffinity
Nama afinitas yang berlaku untuk semua aktivitas dalam aplikasi, kecuali aplikasi yang menentukan afinitas yang berbeda dengan atribut taskAffinity-nya masing-masing. Lihat atribut tersebut untuk informasi selengkapnya.

Secara default, semua aktivitas dalam aplikasi berbagi afinitas yang sama. Nama afinitas tersebut sama dengan nama paket yang ditentukan oleh elemen <manifest>.

android:testOnly
Menentukan apakah aplikasi hanya untuk tujuan pengujian. Misalnya, aplikasi mungkin mengekspos fungsi atau data di luar lingkungannya sendiri yang dapat menyebabkan celah keamanan, tetapi berguna untuk pengujian. APK semacam ini hanya diinstal melalui adb. Anda tidak dapat memublikasikannya ke Google Play.

Android Studio otomatis menambahkan atribut ini saat Anda mengklik Run .

android:theme
Referensi untuk resource gaya yang menentukan tema default untuk semua aktivitas dalam aplikasi. Aktivitas individu dapat mengganti gaya default dengan menetapkan atribut theme-nya sendiri. Untuk mengetahui informasi selengkapnya, lihat Gaya dan tema.
android:uiOptions
Opsi tambahan untuk UI aktivitas. Harus berupa salah satu dari nilai berikut:
NilaiDeskripsi
"none"Tidak ada opsi UI tambahan. Ini adalah defaultnya.
"splitActionBarWhenNarrow"Tambahkan panel di bagian bawah layar untuk menampilkan item tindakan pada panel aplikasi, juga dikenal sebagai panel tindakan, saat dibatasi untuk ruang horizontal, misalnya saat mode potret pada handset. Daripada menampilkan sejumlah kecil item tindakan di panel aplikasi di bagian atas layar, panel aplikasi dibagi menjadi dua bagian, panel navigasi atas dan panel bawah untuk item tindakan. Artinya, tersedia ruang yang wajar untuk item tindakan, serta untuk elemen navigasi dan judul di bagian atas. Item menu tidak dibagi di dua panel. Keduanya selalu muncul bersama.

Untuk mengetahui informasi selengkapnya tentang panel aplikasi, lihat Menambahkan panel aplikasi.

Atribut ini ditambahkan di API level 14.

android:usesCleartextTraffic
Menunjukkan apakah aplikasi akan menggunakan traffic jaringan cleartext, seperti HTTP cleartext. Nilai default untuk aplikasi yang menargetkan API level 27 atau lebih rendah adalah "true". Aplikasi yang menargetkan API level 28 atau lebih tinggi nilainya secara default ditetapkan ke "false".

Jika atribut ditetapkan ke "false", komponen platform, misalnya stack HTTP dan FTP, DownloadManager, dan MediaPlayer, akan menolak permintaan aplikasi untuk menggunakan traffic cleartext.

Library pihak ketiga dianjurkan untuk menerima setelan ini. Alasan utama untuk menghindari traffic cleartext adalah kurang terjaganya kerahasiaan, keaslian, dan perlindungan terhadap sabotase. Penyerang jaringan dapat memproses data yang ditransmisikan serta memodifikasinya tanpa terdeteksi.

Tanda ini diberikan atas dasar upaya terbaik karena mustahil untuk mencegah semua traffic cleartext dari aplikasi Android, dengan pertimbangan tingkat akses yang diberikan kepada mereka. Misalnya, tidak ada harapan bahwa Socket API akan mematuhi flag ini, karena tidak dapat menentukan apakah traffic-nya merupakan cleartext atau tidak.

Namun, sebagian besar traffic jaringan aplikasi ditangani oleh komponen dan stack jaringan tingkat tinggi, yang dapat menerima flag ini dengan membacanya dari ApplicationInfo.flags atau NetworkSecurityPolicy.isCleartextTrafficPermitted().

Catatan: WebView menerima atribut ini untuk aplikasi yang menargetkan API level 26 dan yang lebih tinggi.

Selama pengembangan aplikasi, StrictMode dapat digunakan untuk mengidentifikasi traffic cleartext apa pun dari aplikasi. Untuk mengetahui informasi selengkapnya, lihat StrictMode.VmPolicy.Builder.detectCleartextNetwork().

Atribut ini ditambahkan di API level 23.

Tanda ini diabaikan di Android 7.0 (API level 24) dan lebih tinggi jika terdapat fitur Konfigurasi Keamanan Jaringan Android.

android:vmSafeMode
Menunjukkan apakah aplikasi ingin mesin virtual (VM) beroperasi dalam mode aman. Nilai defaultnya adalah "false".

Atribut ini ditambahkan di API level 8, dengan nilai "true" menonaktifkan compiler just-in-time (JIT) Dalvik.

Atribut ini disesuaikan di API level 22, dengan nilai "true" menonaktifkan compiler ahead-of-time (AOT) ART.

diperkenalkan di:
API level 1
lihat juga:
<activity>
<service>
<receiver>
<provider>