ActivityFlags Enum

Definisi

Menghitung nilai yang dikembalikan oleh beberapa jenis dan diambil sebagai parameter dari beberapa jenis.

Enumerasi ini mendukung kombinasi bitwise dari nilai yang termasuk di dalamnya.

[System.Flags]
public enum ActivityFlags
[<System.Flags>]
type ActivityFlags = 
Warisan
ActivityFlags
Atribut

Bidang

Nama Nilai Deskripsi
GrantReadUriPermission 1

Jika diatur, penerima Niat ini akan diberikan izin untuk melakukan operasi baca pada Uri dalam data Niat dan URI apa pun yang ditentukan dalam ClipData-nya.

GrantWriteUriPermission 2

Jika diatur, penerima Niat ini akan diberikan izin untuk melakukan operasi tulis pada Uri dalam data Niat dan URI apa pun yang ditentukan dalam ClipData-nya.

FromBackground 4

Dapat diatur oleh pemanggil untuk menunjukkan bahwa Niat ini berasal dari operasi latar belakang, bukan dari interaksi pengguna langsung.

DebugLogResolution 8

Bendera yang dapat Anda aktifkan untuk penelusuran kesalahan: ketika diatur, pesan log akan dicetak selama resolusi niat ini untuk menunjukkan kepada Anda apa yang telah ditemukan untuk membuat daftar yang diselesaikan akhir.

ExcludeStoppedPackages 16

Jika diatur, niat ini tidak akan cocok dengan komponen apa pun dalam paket yang saat ini dihentikan.

IncludeStoppedPackages 32

Jika diatur, niat ini akan selalu cocok dengan komponen apa pun dalam paket yang saat ini dihentikan.

GrantPersistableUriPermission 64

Ketika dikombinasikan dengan FLAG_GRANT_READ_URI_PERMISSION dan/atau FLAG_GRANT_WRITE_URI_PERMISSION , pemberian izin URI dapat dipertahankan di seluruh reboot perangkat hingga secara eksplisit dicabut dengan Context.revokeUriPermission(Uri,int) . Bendera ini hanya menawarkan pemberian untuk kemungkinan bertahan; aplikasi penerima harus memanggil ContentResolver.takePersistableUriPermission(Uri,int) untuk benar-benar bertahan.

GrantPrefixUriPermission 128

Ketika dikombinasikan dengan FLAG_GRANT_READ_URI_PERMISSION dan/atau FLAG_GRANT_WRITE_URI_PERMISSION , pemberian izin URI berlaku untuk URI apa pun yang merupakan kecocokan awalan terhadap URI asli yang diberikan. (Tanpa bendera ini, URI harus cocok persis agar akses diberikan.) URI lain dianggap sebagai kecocokan awalan hanya ketika skema, otoritas, dan semua segmen jalur yang ditentukan oleh awalan sama persis.

DirectBootAuto 256

Bendera yang digunakan untuk secara otomatis mencocokkan niat berdasarkan kesadaran Direct Boot dan status pengguna saat ini. Karena perilaku default adalah menerapkan status pengguna saat ini secara otomatis, ini secara efektif merupakan nilai sentinel yang tidak mengubah output kueri apa pun berdasarkan kehadiran atau ketidakhadirannya. Sebaliknya, nilai ini dapat berguna bersama dengan StrictMode.VmPolicy.Builder.detectImplicitDirectBoot() untuk mendeteksi kapan pemanggil mengandalkan pencocokan otomatis implisit, alih-alih mengonfirmasi perilaku eksplisit yang mereka inginkan. Nilai Konstanta: 256 (0x00000100)

RequireDefault 512

Jika diatur dalam niat yang diteruskan ke Context.startActivity() , bendera ini hanya akan meluncurkan niat jika diselesaikan ke satu hasil. Jika tidak ada hasil seperti itu atau jika pemilih sistem akan ditampilkan, ActivityNotFoundException akan dilemparkan.

RequireNonBrowser 1024

Jika diatur dalam niat yang diteruskan ke Context.startActivity() , bendera ini hanya akan meluncurkan niat jika diselesaikan ke hasil yang bukan browser. Jika tidak ada hasil seperti itu, ActivityNotFoundException akan dilemparkan.

MatchExternal 2048

Jika diatur dalam Niat yang diteruskan ke Context.startActivity() , bendera ini akan mencoba meluncurkan aplikasi instan jika tidak ada aplikasi lengkap di perangkat yang sudah dapat menangani niat. Saat mencoba mengatasi aplikasi instan secara eksternal, properti Niat berikut didukung: Intent.setAction(String) Intent.addCategory(String) Intent.setData(Uri) Intent.setType(String) Intent.setPackage(String) Intent.addFlags(int) Jika tidak ada aplikasi instan yang dapat ditemukan, alat penginstal akan diluncurkan untuk memberi tahu pengguna bahwa niat tidak dapat diselesaikan. Pada perangkat yang tidak mendukung aplikasi instan, bendera akan diabaikan. Nilai Konstanta: 2048 (0x00000800)

LaunchAdjacent 4096

Bendera ini hanya digunakan untuk mode multi-jendela layar terpisah. Aktivitas baru akan ditampilkan berdekatan dengan yang meluncurkannya jika memungkinkan. Ini hanya dapat digunakan bersama dengan FLAG_ACTIVITY_NEW_TASK . Selain itu, pengaturan FLAG_ACTIVITY_MULTIPLE_TASK diperlukan jika Anda ingin instans baru aktivitas yang ada dibuat.

RetainInRecents 8192

Secara default dokumen yang dibuat oleh FLAG_ACTIVITY_NEW_DOCUMENT akan memiliki entrinya dalam tugas terbaru yang dihapus ketika pengguna menutupnya (dengan kembali atau bagaimanapun mungkin selesai()). Jika Anda ingin mengizinkan dokumen disimpan dalam beberapa waktu terakhir sehingga dapat diluncurkan kembali, Anda dapat menggunakan bendera ini. Ketika diatur dan aktivitas tugas selesai, entri terbaru akan tetap berada di antarmuka bagi pengguna untuk meluncurkannya kembali, seperti entri terbaru untuk aplikasi tingkat atas. Aktivitas penerimaan dapat mengambil alih permintaan ini dengan R.attr.autoRemoveFromRecents atau dengan secara eksplisit memanggil Activity.finishAndRemoveTask() .

TaskOnHome 16384

Jika diatur dalam Niat yang diteruskan ke Context.startActivity() , bendera ini akan menyebabkan tugas peluncuran baru ditempatkan di atas tugas aktivitas rumah saat ini (jika ada). Artinya, menekan kembali dari tugas akan selalu mengembalikan pengguna ke rumah meskipun itu bukan aktivitas terakhir yang mereka lihat. Ini hanya dapat digunakan bersama dengan FLAG_ACTIVITY_NEW_TASK .

ClearTask 32768

Jika diatur dalam Niat yang diteruskan ke Context.startActivity() , bendera ini akan menyebabkan tugas yang ada yang akan dikaitkan dengan aktivitas dihapus sebelum aktivitas dimulai. Artinya, aktivitas menjadi akar baru dari tugas kosong yang lain, dan aktivitas lama apa pun selesai. Ini hanya dapat digunakan bersama dengan FLAG_ACTIVITY_NEW_TASK .

NoAnimation 65536

Jika diatur dalam Niat yang diteruskan ke Context.startActivity() , bendera ini akan mencegah sistem menerapkan animasi transisi aktivitas untuk masuk ke status aktivitas berikutnya. Ini tidak berarti animasi tidak akan pernah berjalan -- jika perubahan aktivitas lain terjadi yang tidak menentukan bendera ini sebelum aktivitas dimulai di sini ditampilkan, maka transisi tersebut akan digunakan. Bendera ini dapat digunakan dengan baik ketika Anda akan melakukan serangkaian operasi aktivitas tetapi animasi yang dilihat oleh pengguna tidak boleh didorong oleh perubahan aktivitas pertama melainkan nanti.

ReorderToFront 131072

Jika diatur dalam Niat yang diteruskan ke Context.startActivity() , bendera ini akan menyebabkan aktivitas yang diluncurkan dibawa ke depan tumpukan riwayat tugasnya jika sudah berjalan. Misalnya, pertimbangkan tugas yang terdiri dari empat aktivitas: A, B, C, D. Jika D memanggil startActivity() dengan Niat yang menyelesaikan komponen aktivitas B, maka B akan dibawa ke depan tumpukan riwayat, dengan urutan yang dihasilkan ini: A, C, D, B. Bendera ini akan diabaikan jika FLAG_ACTIVITY_CLEAR_TOP juga ditentukan.

NoUserAction 262144

Jika diatur, bendera ini akan mencegah panggilan balik Activity.onUserLeaveHint() normal terjadi pada aktivitas terdepan saat ini sebelum dijeda karena aktivitas yang baru dimulai dibawa ke depan. Biasanya, aktivitas dapat mengandalkan panggilan balik tersebut untuk menunjukkan bahwa tindakan pengguna eksplisit telah menyebabkan aktivitas mereka dipindahkan dari latar depan. Panggilan balik menandai titik yang sesuai dalam siklus hidup aktivitas untuk menutup pemberitahuan apa pun yang ingin ditampilkan "sampai pengguna melihatnya," seperti LED berkedip. Jika aktivitas pernah dimulai melalui peristiwa yang tidak digerakkan pengguna seperti tanda terima panggilan telepon atau penanganan alarm, bendera ini harus diteruskan ke Context.startActivity, memastikan bahwa aktivitas jeda tidak berpikir pengguna telah mengakui pemberitahuannya. Nilai Konstanta: 262144 (0x00040000)

ClearWhenTaskReset 524288

Konstanta ini tidak digunakan lagi di API level 21. Pada API 21 ini berkinerja identik dengan FLAG_ACTIVITY_NEW_DOCUMENT yang harus digunakan alih-alih ini.

NewDocument 524288

Bendera ini digunakan untuk membuka dokumen ke dalam tugas baru yang berakar pada aktivitas yang diluncurkan oleh Niat ini. Melalui penggunaan bendera ini, atau atribut yang setara, R.attr.documentLaunchMode beberapa instans dari aktivitas yang sama yang berisi dokumen yang berbeda akan muncul dalam daftar tugas terbaru. Penggunaan formulir atribut aktivitas ini, R.attr.documentLaunchMode , lebih disukai daripada bendera Niat yang dijelaskan di sini. Formulir atribut memungkinkan Aktivitas menentukan beberapa perilaku dokumen untuk semua peluncur Aktivitas sedangkan menggunakan bendera ini memerlukan setiap Niat yang meluncurkan Aktivitas untuk menentukannya. Perhatikan bahwa semantik default bendera ini w.r.t. apakah entri terbaru untuknya disimpan setelah aktivitas selesai berbeda dari penggunaan FLAG_ACTIVITY_NEW_TASK dan R.attr.documentLaunchMode -- jika bendera ini digunakan untuk membuat entri terbaru baru, maka secara default entri tersebut akan dihapus setelah aktivitas selesai. Anda dapat memodifikasi perilaku ini dengan FLAG_ACTIVITY_RETAIN_IN_RECENTS . FLAG_ACTIVITY_NEW_DOCUMENT dapat digunakan bersama dengan FLAG_ACTIVITY_MULTIPLE_TASK . Ketika digunakan sendiri, ini setara dengan manifes Aktivitas yang menentukan R.attr.documentLaunchMode ="intoExisting". Ketika digunakan dengan FLAG_ACTIVITY_MULTIPLE_TASK itu setara dengan manifes Aktivitas yang menentukan R.attr.documentLaunchMode ="always". Bendera diabaikan bahkan bersama dengan FLAG_ACTIVITY_MULTIPLE_TASK ketika manifes Aktivitas menentukan R.attr.documentLaunchMode ="never". Lihat R.attr.documentLaunchMode untuk informasi selengkapnya. Lihat juga: R.attr.documentLaunchMode FLAG_ACTIVITY_MULTIPLE_TASK Constant Value: 524288 (0x00080000)

LaunchedFromHistory 1048576

Bendera ini biasanya tidak diatur oleh kode aplikasi, tetapi diatur untuk Anda oleh sistem jika aktivitas ini diluncurkan dari riwayat (kunci rumah longpress).

ReceiverVisibleToInstantApps 2097152

Jika diatur, siaran akan terlihat oleh penerima di Aplikasi Instan. Secara default, Aplikasi Instan tidak akan menerima siaran. Bendera ini tidak berpengaruh saat digunakan oleh Aplikasi Instan.

ResetTaskIfNeeded 2097152

Jika diatur, dan aktivitas ini sedang dimulai dalam tugas baru atau membawa ke atas tugas yang ada, maka akan diluncurkan sebagai pintu depan tugas.

BroughtToFront 4194304

Bendera ini biasanya tidak diatur oleh kode aplikasi, tetapi diatur untuk Anda oleh sistem seperti yang dijelaskan dalam dokumentasi launchMode untuk mode singleTask.

ExcludeFromRecents 8388608

Jika diatur, aktivitas baru tidak disimpan dalam daftar aktivitas yang baru diluncurkan.

PreviousIsTop 16777216

Jika diatur dan niat ini digunakan untuk meluncurkan aktivitas baru dari yang sudah ada, aktivitas saat ini tidak akan dihitung sebagai aktivitas teratas untuk memutuskan apakah niat baru harus dikirimkan ke bagian atas alih-alih memulai yang baru. Aktivitas sebelumnya akan digunakan sebagai bagian atas, dengan asumsi bahwa aktivitas saat ini akan segera selesai.

ForwardResult 33554432

Jika diatur dan niat ini digunakan untuk meluncurkan aktivitas baru dari yang sudah ada, maka target balasan aktivitas yang ada akan ditransfer ke aktivitas baru.

ClearTop 67108864

Jika diatur, dan aktivitas yang diluncurkan sudah berjalan dalam tugas saat ini, maka alih-alih meluncurkan instans baru aktivitas tersebut, semua aktivitas lain di atasnya akan ditutup dan Niat ini akan dikirimkan ke aktivitas lama (sekarang di atas) sebagai Niat baru. Misalnya, pertimbangkan tugas yang terdiri dari aktivitas: A, B, C, D. Jika D memanggil startActivity() dengan Niat yang menyelesaikan komponen aktivitas B, maka C dan D akan selesai dan B menerima Niat yang diberikan, yang menghasilkan tumpukan sekarang adalah: A, B. Instans aktivitas B yang sedang berjalan dalam contoh di atas akan menerima niat baru yang Anda mulai di sini dalam metode onNewIntent(), atau menjadi dirinya sendiri selesai dan dimulai ulang dengan niat baru. Jika telah mendeklarasikan mode peluncurannya menjadi "multiple" (default) dan Anda belum mengatur FLAG_ACTIVITY_SINGLE_TOP dalam niat yang sama, maka mode tersebut akan selesai dan dibuat ulang; untuk semua mode peluncuran lainnya atau jika FLAG_ACTIVITY_SINGLE_TOP diatur, Niat ini akan dikirimkan ke instans saat ini onNewIntent(). Mode peluncuran ini juga dapat digunakan untuk efek yang baik bersama dengan FLAG_ACTIVITY_NEW_TASK : jika digunakan untuk memulai aktivitas akar tugas, itu akan membawa instans tugas yang sedang berjalan ke latar depan, dan kemudian membersihkannya ke status akarnya. Ini sangat berguna, misalnya, saat meluncurkan aktivitas dari manajer pemberitahuan. Lihat Tugas dan Tumpukan Belakang untuk informasi selengkapnya tentang tugas. Nilai Konstanta: 67108864 (0x04000000)

MultipleTask 134217728

Jangan gunakan bendera ini kecuali Anda menerapkan peluncur aplikasi tingkat atas Anda sendiri.NewTaskselalu

Karena sistem default tidak menyertakan manajemen tugas grafis, Anda tidak boleh menggunakan bendera ini kecuali Anda menyediakan beberapa cara bagi pengguna untuk kembali ke tugas yang telah Anda luncurkan.

NewTask

Lihat Tugas dan Tumpukan Belakang untuk informasi selengkapnya tentang tugas.

ReceiverNoAbort 134217728

Jika ini adalah siaran yang dipesan, jangan izinkan penerima untuk membatalkan siaran. Mereka masih dapat menyebarkan hasil melalui ke penerima nanti, tetapi mereka tidak dapat mencegah penerima nanti melihat siaran.

NewTask 268435456

Jika diatur, aktivitas ini akan menjadi awal tugas baru pada tumpukan riwayat ini. Tugas (dari aktivitas yang memulainya ke aktivitas tugas berikutnya) menentukan grup aktivitas atom yang dapat dipindahkan pengguna. Tugas dapat dipindahkan ke latar depan dan latar belakang; semua aktivitas di dalam tugas tertentu selalu tetap dalam urutan yang sama. Lihat Tugas dan Tumpukan Belakang untuk informasi selengkapnya tentang tugas. Bendera ini umumnya digunakan oleh aktivitas yang ingin menyajikan perilaku gaya "peluncur": mereka memberi pengguna daftar hal terpisah yang dapat dilakukan, yang jika tidak berjalan sepenuhnya independen dari aktivitas yang meluncurkannya. Saat menggunakan bendera ini, jika tugas sudah berjalan untuk aktivitas yang sekarang Anda mulai, maka aktivitas baru tidak akan dimulai; sebaliknya, tugas saat ini hanya akan dibawa ke depan layar dengan status terakhir masuk. Lihat FLAG_ACTIVITY_MULTIPLE_TASK bendera untuk menonaktifkan perilaku ini. Bendera ini tidak dapat digunakan ketika pemanggil meminta hasil dari aktivitas yang diluncurkan. Nilai Konstanta: 268435456 (0x10000000)

ReceiverForeground 268435456

Jika diatur, saat mengirim siaran, penerima diizinkan untuk berjalan pada prioritas latar depan, dengan interval batas waktu yang lebih singkat.

ReceiverReplacePending 536870912

Jika diatur, saat mengirim siaran, siaran baru akan menggantikan siaran tertunda yang ada yang cocok dengan siaran tersebut. Pencocokan didefinisikan oleh Intent.filterEquals yang mengembalikan true untuk niat kedua siaran. Ketika kecocokan ditemukan, siaran baru (dan penerima yang terkait dengannya) akan menggantikan yang ada di daftar siaran yang tertunda, tetap pada posisi yang sama dalam daftar. Bendera ini paling sering digunakan dengan siaran lekat, yang hanya peduli untuk memberikan nilai terbaru dari siaran kepada penerima mereka.

SingleTop 536870912

Jika diatur, aktivitas tidak akan diluncurkan jika sudah berjalan di bagian atas tumpukan riwayat.

NoHistory 1073741824

Jika diatur, aktivitas baru tidak disimpan dalam tumpukan riwayat.

ReceiverRegisteredOnly 1073741824

Jika diatur, saat mengirim siaran hanya penerima terdaftar yang akan dipanggil -- tidak ada komponen BroadcastReceiver yang akan diluncurkan.

Keterangan

Bagian dari halaman ini adalah modifikasi berdasarkan pekerjaan yang dibuat dan dibagikan oleh Android Open Source Project dan digunakan sesuai dengan istilah yang dijelaskan dalam Lisensi Creative Commons 2.5 Lisensi Atribusi.

Berlaku untuk