ActivityFlags Enumerazione

Definizione

Enumera i valori restituiti da diversi tipi e considerati come parametro di diversi tipi.

Questa enumerazione supporta una combinazione bit per bit dei rispettivi valori dei membri.

[System.Flags]
public enum ActivityFlags
[<System.Flags>]
type ActivityFlags = 
Ereditarietà
ActivityFlags
Attributi

Campi

Nome Valore Descrizione
GrantReadUriPermission 1

Se impostato, al destinatario di questa finalità verrà concessa l'autorizzazione per eseguire operazioni di lettura sull'URI nei dati della finalità ed eventuali URI specificati nel relativo ClipData.

GrantWriteUriPermission 2

Se impostato, al destinatario di questa finalità verrà concessa l'autorizzazione per eseguire operazioni di scrittura sull'URI nei dati della finalità ed eventuali URI specificati in ClipData.

FromBackground 4

Può essere impostato dal chiamante per indicare che questa finalità proviene da un'operazione in background, non dall'interazione diretta dell'utente.

DebugLogResolution 8

Flag che è possibile abilitare per il debug: quando impostato, i messaggi di log verranno stampati durante la risoluzione di questa finalità per mostrare cosa è stato trovato per creare l'elenco risolto finale.

ExcludeStoppedPackages 16

Se impostata, questa finalità non corrisponderà ad alcun componente nei pacchetti attualmente arrestati.

IncludeStoppedPackages 32

Se impostata, questa finalità corrisponderà sempre a tutti i componenti nei pacchetti attualmente arrestati.

GrantPersistableUriPermission 64

Se combinato con FLAG_GRANT_READ_URI_PERMISSION e/o FLAG_GRANT_WRITE_URI_PERMISSION , la concessione dell'autorizzazione URI può essere mantenuta tra i riavvii del dispositivo fino a quando non viene revocata in modo esplicito con Context.revokeUriPermission(Uri,int). Questo flag offre solo la concessione per la possibile persistenza; L'applicazione ricevente deve chiamare ContentResolver.takePersistableUriPermission(Uri,int) per rendere effettivamente persistente.

GrantPrefixUriPermission 128

Se combinato con FLAG_GRANT_READ_URI_PERMISSION e/o FLAG_GRANT_WRITE_URI_PERMISSION , la concessione dell'autorizzazione URI si applica a qualsiasi URI che rappresenta una corrispondenza di prefisso rispetto all'URI concesso originale. Senza questo flag, l'URI deve corrispondere esattamente per consentire l'accesso. Un altro URI è considerato una corrispondenza di prefisso solo quando schema, autorità e tutti i segmenti di percorso definiti dal prefisso sono una corrispondenza esatta.

DirectBootAuto 256

Flag usato per associare automaticamente le finalità in base alla consapevolezza di Direct Boot e allo stato utente corrente. Poiché il comportamento predefinito consiste nell'applicare automaticamente lo stato utente corrente, si tratta di un valore sentinel che non modifica l'output di alcuna query in base alla presenza o all'assenza. Questo valore può invece essere utile in combinazione con StrictMode.VmPolicy.Builder.detectImplicitDirectBoot() per rilevare quando un chiamante si basa sulla corrispondenza automatica implicita, anziché confermare il comportamento esplicito desiderato. Valore costante: 256 (0x00000100)

RequireDefault 512

Se impostato in una finalità passata a Context.startActivity(), questo flag avvierà la finalità solo se si risolve in un singolo risultato. Se non esiste alcun risultato di questo tipo o se il sistema chooser verrebbe visualizzato in caso contrario, verrà generata un'eccezione ActivityNotFoundException.

RequireNonBrowser 1024

Se impostato in una finalità passata a Context.startActivity(), questo flag avvierà la finalità solo se si risolve in un risultato che non è un browser. Se tale risultato non esiste, verrà generata un'eccezione ActivityNotFoundException.

MatchExternal 2048

Se impostato in una finalità passata a Context.startActivity(), questo flag tenterà di avviare un'app istantanea se nel dispositivo non è già possibile gestire la finalità. Quando si tenta di risolvere le app istantanee esternamente, sono supportate le proprietà finalità seguenti: Intent.setAction(String) Intent.addCategory(String) Intent.setData(Uri) Intent.setType(String) Intent.setPackage(String) Intent.addFlags(int) Nel caso in cui non sia possibile trovare un'app immediata, il programma di installazione verrà avviato per notificare all'utente che non è stato possibile risolvere la finalità. Nei dispositivi che non supportano le app istantanee, il flag verrà ignorato. Valore costante: 2048 (0x00000800)

LaunchAdjacent 4096

Questo flag viene usato solo per la modalità a più finestre a schermo diviso. La nuova attività verrà visualizzata adiacente a quella che la avvia, se possibile. Questa operazione può essere usata solo in combinazione con FLAG_ACTIVITY_NEW_TASK . È inoltre necessario impostare FLAG_ACTIVITY_MULTIPLE_TASK se si vuole creare una nuova istanza di un'attività esistente.

RetainInRecents 8192

Per impostazione predefinita, un documento creato da FLAG_ACTIVITY_NEW_DOCUMENT avrà la voce nelle attività recenti rimosse quando l'utente lo chiude (con indietro o comunque potrebbe terminare()). Se invece si desidera consentire che il documento venga mantenuto in recenti in modo che possa essere riavviato, è possibile usare questo flag. Al termine dell'impostazione e dell'attività dell'attività, la voce recenti rimarrà nell'interfaccia per consentire all'utente di avviarla nuovamente, ad esempio una voce recente per un'applicazione di primo livello. L'attività ricevente può eseguire l'override di questa richiesta con R.attr.autoRemoveFromRecents o chiamando explcitly Activity.finishAndRemoveTask() .

TaskOnHome 16384

Se impostato in una finalità passata a Context.startActivity(), questo flag causerà l'inserimento di un'attività di avvio appena avviata all'inizio dell'attività home corrente (se presente). Vale a dire, premendo indietro dall'attività verrà sempre restituito l'utente a casa anche se non era l'ultima attività che ha visto. Questa operazione può essere usata solo in combinazione con FLAG_ACTIVITY_NEW_TASK .

ClearTask 32768

Se impostato in una finalità passata a Context.startActivity(), questo flag causerà la cancellazione di qualsiasi attività esistente associata all'attività prima dell'avvio dell'attività. Ovvero, l'attività diventa la nuova radice di un'attività altrimenti vuota e tutte le attività precedenti vengono completate. Questa operazione può essere usata solo in combinazione con FLAG_ACTIVITY_NEW_TASK .

NoAnimation 65536

Se impostato in una finalità passata a Context.startActivity(), questo flag impedirà al sistema di applicare un'animazione di transizione dell'attività per passare allo stato successivo dell'attività. Ciò non significa che un'animazione non verrà mai eseguita. Se si verifica un'altra modifica dell'attività che non specifica questo flag prima che venga visualizzata l'attività avviata qui, verrà usata tale transizione. Questo flag può essere usato bene quando si intende eseguire una serie di operazioni di attività, ma l'animazione vista dall'utente non deve essere guidata dalla prima modifica dell'attività, ma piuttosto da una versione successiva.

ReorderToFront 131072

Se impostato in una finalità passata a Context.startActivity(), questo flag causerà l'esecuzione dell'attività avviata all'inizio dello stack di cronologia dell'attività, se è già in esecuzione. Si consideri ad esempio un'attività costituita da quattro attività: A, B, C, D. Se D chiama startActivity() con una finalità che si risolve nel componente dell'attività B, B verrà portato all'inizio dello stack di cronologia, con questo ordine risultante: A, C, D, B. Questo flag verrà ignorato se viene specificato anche FLAG_ACTIVITY_CLEAR_TOP.

NoUserAction 262144

Se impostato, questo flag impedirà che il callback normale Activity.onUserLeaveHint() si verifichi sull'attività iniziale corrente prima che venga sospesa quando l'attività appena avviata viene portata in primo piano. In genere, un'attività può basarsi su tale callback per indicare che un'azione esplicita dell'utente ha causato lo spostamento dell'attività in primo piano. Il callback contrassegna un punto appropriato nel ciclo di vita dell'attività per ignorare le notifiche che intende visualizzare "fino a quando l'utente non li ha visti", ad esempio un LED lampeggiante. Se un'attività viene avviata tramite eventi non basati sull'utente, ad esempio la ricezione tramite telefonata o un gestore di allarmi, questo flag deve essere passato a Context.startActivity, assicurando che l'attività di sospensione non pensi che l'utente abbia riconosciuto la notifica. Valore costante: 262144 (0x00040000)

ClearWhenTaskReset 524288

Questa costante è stata deprecata nel livello API 21. A partire dall'API 21, questa operazione viene eseguita in modo identico a FLAG_ACTIVITY_NEW_DOCUMENT che deve essere usata invece di questo.

NewDocument 524288

Questo flag viene usato per aprire un documento in una nuova attività radicata nell'attività avviata da questa finalità. Tramite l'uso di questo flag o il relativo attributo equivalente, R.attr.documentLaunchMode più istanze della stessa attività contenente documenti diversi verranno visualizzati nell'elenco delle attività recenti. L'uso del formato dell'attributo di attività di questo tipo, R.attr.documentLaunchMode, è preferibile rispetto al flag Intent descritto qui. Il modulo attributo consente all'attività di specificare più comportamenti del documento per tutti gli utilità di avvio dell'attività, mentre l'uso di questo flag richiede ogni finalità che avvia l'attività per specificarla. Si noti che la semantica predefinita di questo flag w.r.t. se la voce dei recenti viene mantenuta al termine dell'attività è diversa dall'uso di FLAG_ACTIVITY_NEW_TASK e R.attr.documentLaunchMode- se questo flag viene usato per creare una nuova voce di recenti, per impostazione predefinita tale voce verrà rimossa al termine dell'attività. È possibile modificare questo comportamento con FLAG_ACTIVITY_RETAIN_IN_RECENTS . FLAG_ACTIVITY_NEW_DOCUMENT possono essere usati insieme a FLAG_ACTIVITY_MULTIPLE_TASK . Se usato da solo, è l'equivalente del manifesto dell'attività che specifica R.attr.documentLaunchMode ="intoExisting". Se usato con FLAG_ACTIVITY_MULTIPLE_TASK è l'equivalente del manifesto dell'attività che specifica R.attr.documentLaunchMode ="always". Il flag viene ignorato anche in combinazione con FLAG_ACTIVITY_MULTIPLE_TASK quando il manifesto dell'attività specifica R.attr.documentLaunchMode ="never". Per altre informazioni, vedere R.attr.documentLaunchMode. Vedere anche: R.attr.documentLaunchMode FLAG_ACTIVITY_MULTIPLE_TASK Valore costante: 524288 (0x00080000)

LaunchedFromHistory 1048576

Questo flag non viene in genere impostato dal codice dell'applicazione, ma impostato automaticamente dal sistema se questa attività viene avviata dalla cronologia (longpress home key).

ReceiverVisibleToInstantApps 2097152

Se impostata, la trasmissione sarà visibile ai ricevitori in App istantanee. Per impostazione predefinita, le app istantanee non riceveranno trasmissioni. Questo flag non ha alcun effetto quando viene usato da un'app istantanea.

ResetTaskIfNeeded 2097152

Se impostata, e questa attività viene avviata in una nuova attività o portando all'inizio un'attività esistente, verrà avviata come frontdoor dell'attività.

BroughtToFront 4194304

Questo flag non viene in genere impostato dal codice dell'applicazione, ma impostato automaticamente dal sistema come descritto nella documentazione di launchMode per la modalità singleTask.

ExcludeFromRecents 8388608

Se impostata, la nuova attività non viene mantenuta nell'elenco delle attività avviate di recente.

PreviousIsTop 16777216

Se impostata e questa finalità viene usata per avviare una nuova attività da una esistente, l'attività corrente non verrà conteggiata come attività principale per decidere se la nuova finalità deve essere recapitata all'inizio anziché avviarne una nuova. L'attività precedente verrà usata come top, presupponendo che l'attività corrente venga completata immediatamente.

ForwardResult 33554432

Se impostata e questa finalità viene usata per avviare una nuova attività da una esistente, la destinazione di risposta dell'attività esistente verrà trasferita alla nuova attività.

ClearTop 67108864

Se impostata, e l'attività avviata è già in esecuzione nell'attività corrente, invece di avviare una nuova istanza di tale attività, tutte le altre attività su di esso verranno chiuse e questa finalità verrà recapitata all'attività precedente (ora in alto) come nuova finalità. Si consideri, ad esempio, un'attività costituita dalle attività: A, B, C, D. Se D chiama startActivity() con una finalità che viene risolta nel componente dell'attività B, C e D verranno completati e B riceveranno la finalità specificata, con conseguente stack: A, B. L'istanza attualmente in esecuzione dell'attività B nell'esempio precedente riceverà la nuova finalità che si sta avviando qui nel metodo onNewIntent() oppure verrà completata e riavviata con la nuova finalità. Se ha dichiarato la modalità di avvio come "multiple" (impostazione predefinita) e non è stata impostata FLAG_ACTIVITY_SINGLE_TOP nella stessa finalità, verrà completata e ricreata; per tutte le altre modalità di avvio o se FLAG_ACTIVITY_SINGLE_TOP è impostato, questa finalità verrà recapitata all'istanza corrente onNewIntent(). Questa modalità di avvio può essere usata anche per un buon effetto in combinazione con FLAG_ACTIVITY_NEW_TASK : se usato per avviare l'attività radice di un'attività, porterà qualsiasi istanza attualmente in esecuzione di tale attività in primo piano e quindi cancellarla allo stato radice. Ciò è particolarmente utile, ad esempio, quando si avvia un'attività dal gestore delle notifiche. Per altre informazioni sulle attività, vedere Attività e Stack back. Valore costante: 67108864 (0x04000000)

MultipleTask 134217728

Non usare questo flag a meno che non si implementi un'utilità di avvio delle applicazioni di primo livello.NewTasksempre

Poiché il sistema predefinito non include la gestione delle attività grafiche, non è consigliabile usare questo flag a meno che non si fornisca un modo per consentire a un utente di tornare alle attività avviate.

NewTask

Per altre informazioni sulle attività, vedere Attività e Stack back .

ReceiverNoAbort 134217728

Se si tratta di una trasmissione ordinata, non consentire ai ricevitori di interrompere la trasmissione. Possono comunque propagare i risultati ai ricevitori successivi, ma non possono impedire ai ricevitori successivi di visualizzare la trasmissione.

NewTask 268435456

Se impostata, questa attività diventerà l'inizio di una nuova attività nello stack di cronologia. Un'attività (dall'attività che l'ha avviata all'attività successiva) definisce un gruppo atomico di attività a cui l'utente può passare. Le attività possono essere spostate in primo piano e in background; tutte le attività all'interno di un'attività specifica rimangono sempre nello stesso ordine. Per altre informazioni sulle attività, vedere Attività e Stack back. Questo flag viene generalmente usato dalle attività che vogliono presentare un comportamento di stile "launcher": forniscono all'utente un elenco di elementi separati che possono essere eseguiti, che altrimenti vengono eseguiti completamente indipendentemente dall'attività che li avvia. Quando si usa questo flag, se un'attività è già in esecuzione per l'attività che si sta avviando, una nuova attività non verrà avviata; Al contrario, l'attività corrente verrà semplicemente portata alla parte anteriore dello schermo con lo stato in cui è stato eseguito l'ultimo. Vedere FLAG_ACTIVITY_MULTIPLE_TASK per un flag per disabilitare questo comportamento. Questo flag non può essere usato quando il chiamante richiede un risultato dall'attività avviata. Valore costante: 268435456 (0x10000000)

ReceiverForeground 268435456

Se impostato, quando si invia una trasmissione il destinatario può essere eseguito con priorità in primo piano, con un intervallo di timeout più breve.

ReceiverReplacePending 536870912

Se impostata, quando si invia una trasmissione, la nuova trasmissione sostituirà qualsiasi trasmissione in sospeso esistente corrispondente. La corrispondenza è definita da Intent.filterEquals che restituisce true per le finalità delle due trasmissioni. Quando viene trovata una corrispondenza, la nuova trasmissione (e i ricevitori associati) sostituirà quella esistente nell'elenco delle trasmissioni in sospeso, rimanendo nella stessa posizione nell'elenco. Questo flag viene in genere usato con trasmissioni permanenti, che si preoccupano solo di fornire i valori più recenti della trasmissione ai loro ricevitori.

SingleTop 536870912

Se impostata, l'attività non verrà avviata se è già in esecuzione nella parte superiore dello stack di cronologia.

NoHistory 1073741824

Se impostata, la nuova attività non viene mantenuta nello stack di cronologia.

ReceiverRegisteredOnly 1073741824

Se impostato, quando si invia una trasmissione verranno chiamati solo i ricevitori registrati. Non verrà avviato alcun componente BroadcastReceiver.

Commenti

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a