<applicazione>

sintassi:
<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>
contenuto in:
<manifest>
può contenere:
<activity>
<activity-alias>
<meta-data>
<service>
<receiver>
<profileable>
<provider>
<uses-library>
<uses-native-library>
description:

La dichiarazione della richiesta. Questo elemento contiene elementi secondari che dichiarano ciascuno dei componenti dell'applicazione e hanno attributi che possono interessare tutti i componenti.

Molti di questi attributi, ad esempio, icon, label, permission e process taskAffinity e allowTaskReparenting impostano valori predefiniti per gli attributi corrispondenti degli elementi componenti. Altri, ad esempio debuggable, enabled, description e allowClearUserData, imposta i valori per l'applicazione nel suo insieme e non vengono sostituite dai componenti.

attributi
android:allowTaskReparenting
Se le attività definite dall'applicazione possono essere spostate l'attività che li ha avviati verso l'attività a cui hanno un'affinità quando viene portato in primo piano. È "true" se possono spostarsi e "false" se devono rimanere con l'attività in cui sono iniziate. Il valore predefinito è "false".

La <activity> ha il proprio allowTaskReparenting che può sostituire il valore impostato qui.

android:allowBackup

Se consentire all'applicazione di partecipare al backup e ripristinare l'infrastruttura. Se questo attributo è impostato su "false", non verrà eseguire il backup o il ripristino dell'applicazione, anche backup dell'intero sistema che altrimenti salva tutti i dati dell'applicazione utilizzando adb. Il valore predefinito di questo attributo è "true".

Nota : per le app che hanno come target Android 12 (livello API 31) o versioni successive, questo comportamento. varia. Sui dispositivi di alcuni produttori, non puoi disattivare la migrazione da dispositivo a dispositivo dei file dell'app.

Tuttavia, puoi disattivare il backup e il ripristino basati su cloud dei file dell'app impostando questo attributo a "false", anche se la tua app ha come target Android 12 (livello API 31) oppure in alto.

Per ulteriori informazioni, consulta Sezione Backup e ripristino della pagina che descrive le modifiche del comportamento per le app che hanno come target Android 12 (livello API 31) oppure in alto.

android:allowClearUserData

Indica se consentire all'applicazione di reimpostare i dati utente. Questi dati includono , ad esempio se l'utente ha visualizzato descrizioni comando introduttive, come nonché impostazioni e preferenze personalizzabili dall'utente. Il valore predefinito è "true".

Nota:solo le app che fanno parte dell'immagine di sistema possono dichiarare questo attributo in modo esplicito. Le app di terze parti non possono includere questa informazione nei file manifest.

Per ulteriori informazioni, consulta Panoramica del backup dei dati.

android:allowCrossUidActivitySwitchFromBelow

Specifica se le attività al di sotto di questa nell'attività possono anche avviare altre attività o completa l'attività.

A partire dal livello di SDK target Build.VERSION_CODES.VANILLA_ICE_CREAM, le app potrebbe non essere possibile avviare nuove attività o completarle, a meno che non si tratti di quelle principali di queste attività appartengono allo stesso UID per motivi di sicurezza.

L'impostazione di questo flag su true consentirà all'app in fase di avvio di ignorare la limitazione se questa attività è in alto. Le app corrispondenti all'UID di questa attività sono sempre esenti.

Per ulteriori informazioni, consulta la sezione Lanci di attività in background protette.

android:allowNativeHeapPointerTagging

Indica se l'app attiva la funzionalità di tagging del puntatore heap. Il valore predefinito questo attributo è "true".

Nota: la disattivazione di questa funzionalità non risolve il problema un problema di integrità del codice sottostante. I futuri dispositivi hardware potrebbero non supportare questo tag manifest.

Per ulteriori informazioni, consulta la sezione Puntatori codificati.

android:appCategory

Dichiara la categoria di questa app. Le categorie vengono utilizzate per raggruppare più app in gruppi significativi, ad esempio quando si riepilogano batteria, rete l'utilizzo del disco. Definisci questo valore solo per le app che si adattano bene a uno dei categorie specifiche.

Deve essere uno dei seguenti valori costanti.

ValoreDescrizione
accessibilityApp principalmente costituite da app di accessibilità, come gli screen reader.
audioApp che funzionano principalmente con audio o musica, come i lettori di musica.
gameApp costituite principalmente da giochi.
imageApp che funzionano principalmente con immagini o foto, ad esempio le app per la fotocamera o la galleria.
mapsApp principalmente costituite da app di mappe, come le app di navigazione.
newsApp principalmente relative alle notizie, come giornali, riviste o app di sport.
productivityApp principalmente costituite da app di produttività, ad esempio app di spazio di archiviazione sul cloud o app di lavoro.
socialApp principalmente social, come app di messaggistica, comunicazione, email o di social network.
videoApp che funzionano principalmente con video o film, ad esempio le app di video in streaming.

android:backupAgent
Il nome della classe che implementa l'agente di backup dell'applicazione, per una sottoclasse BackupAgent. Il valore dell'attributo è Il nome completo di una classe, come "com.example.project.MyBackupAgent". Tuttavia, come forma breve, se il primo carattere del nome è un punto, ad esempio ".MyBackupAgent", viene aggiunto alla specificato nel <manifest> .

Non esiste un valore predefinito. Il nome deve essere specifico.

android:backupInForeground
Indica che Operazioni di backup automatico può essere eseguito su questa app anche se si trova in una posizione equivalente in primo piano stato. Il sistema arresta un'app durante l'operazione di backup automatico, quindi usa questo attributo con cautela. L'impostazione di questo flag su "true" può influire sull'app comportamento degli utenti quando l'app è attiva.

Il valore predefinito è "false", il che significa che il sistema operativo evita Eseguire il backup dell'app mentre è in esecuzione in primo piano, ad esempio un'app di musica. che riproduce attivamente musica utilizzando un servizio nel Stato startForeground().

android:banner
Una risorsa estraibile fornendo un banner grafico esteso per l'elemento associato. Da utilizzare con <application> per fornire un banner predefinito per tutte le attività dell'applicazione o con il tag <activity> per fornire un banner per un'attività specifica.

Il sistema utilizza il banner per rappresentare un'app in nella schermata Home di Android TV. Pertanto, specificalo solo per le applicazioni con un'attività che gestisce Intenzione CATEGORY_LEANBACK_LAUNCHER.

Questo attributo è impostato come riferimento a una risorsa drawable che contiene dell'immagine, ad esempio "@drawable/banner". Non esiste un banner predefinito.

Per ulteriori informazioni, vedi Fornire un banner nella schermata Home.

android:dataExtractionRules

Le applicazioni possono impostare questo attributo su una risorsa XML in cui specificano regole che determinano quali file e directory possono essere copiati dal dispositivo nell'ambito del backup o operazioni di trasferimento.

Per informazioni sul formato del file XML, consulta Backup e ripristino.

android:debuggable
Se l'applicazione può essere sottoposta a debug, anche in esecuzione su un dispositivo in modalità utente. È "true" se può essere e "false" in caso contrario. Il valore predefinito è "false".
android:description
Testo leggibile dell'applicazione, più lungo e più descrittivo dell'etichetta dell'applicazione. Il valore è impostato come riferimento a una risorsa stringa. A differenza dell'etichetta, non può essere una stringa non elaborata. Non esiste un valore predefinito.
android:enabled
Se il sistema Android può creare un'istanza per i componenti di per l'applicazione. È "true" se può e "false" in caso contrario. Se il valore è "true", il valore enabled determina se il componente è abilitato. Se il valore è "false", sostituisce il valore specifici dei componenti e tutti i componenti siano disattivati.

Il valore predefinito è "true".

android:extractNativeLibs

A partire da AGP 4.2.0, l'opzione DSL useLegacyPackaging sostituisce l'attributo del file manifest extractNativeLibs. Usa useLegacyPackaging nel file build.gradle della tua app anziché extractNativeLibs nel file manifest per configurare la libreria nativa un comportamento di compressione. Per ulteriori informazioni, consulta la nota di rilascio Utilizza il protocollo DSL per creare pacchetti di librerie native compresse.

Questo attributo indica se il programma di installazione del pacchetto estrae le librerie native dal APK al file system. Se il criterio viene impostato su "false", le librerie native vengono archiviate non compressi nell'APK. L'APK potrebbe essere più grande, ma l'applicazione si carica più velocemente poiché le librerie vengono caricate direttamente dall'APK in fase di runtime.

Il valore predefinito di extractNativeLibs dipende da minSdkVersion e di AGP in uso. Nella maggior parte dei casi, probabilmente il comportamento predefinito è quello desiderato e non devi impostare questo attributo in modo esplicito.

android:fullBackupContent
Questo attributo rimanda a un file XML che contiene le regole di backup complete per Backup automatico. Queste regole determinano i file di cui viene eseguito il backup. Per ulteriori informazioni, consulta Sintassi della configurazione XML per Backup automatico.

Questo attributo è facoltativo. Se non è specificato, per impostazione predefinita viene eseguito il backup automatico. include la maggior parte dei file dell'app. Per ulteriori informazioni, vedi File di cui è stato eseguito il backup.

android:fullBackupOnly
Questo attributo indica se utilizzare Backup automatico sui dispositivi se è disponibile. Se è impostata su "true", la tua app viene eseguita Backup automatico installato su un dispositivo con Android 6.0 (livello API 23) in alto. Sui dispositivi meno recenti, la tua app ignora questo attributo ed esegue backup di coppie chiave/valore.

Il valore predefinito è "false".

android:gwpAsanMode
Questo attributo indica se utilizzare GWP-ASan, una funzionalità nativa di allocazione della memoria che aiuta e trovare bug use-after-free e heap-buffer-overflow.

Il valore predefinito è "never".

android:hasCode
Se l'applicazione contiene codice DEX, ovvero codice che utilizza Linguaggio di programmazione Java o Kotlin. È "true" se sì e "false" in caso contrario. Quando il valore è "false", il sistema non tenta di caricare alcuna applicazione all'avvio dei componenti. Il valore predefinito è "true".

Se l'applicazione include codice nativo (C/C++), ma non codice DEX, essere impostato su "false". Se impostato su "true" quando l'APK non contiene codice DEX, il caricamento dell'app potrebbe non riuscire.

Questa proprietà deve tenere conto del codice incluso nell'applicazione e dipendenze. Se l'applicazione dipende da un AAR che utilizza Il codice Java/Kotlin o direttamente su un JAR, app:hasCode deve essere "true" oppure omesso (impostazione predefinita).

Ad esempio, la tua app potrebbe supportare Pubblicazione delle funzionalità di Google Play e inclusione delle funzionalità moduli che non generano file DEX, che sono ottimizzati per bytecode completamente gestita. In questo caso, devi impostare questa proprietà su "false" nel file manifest del modulo per evitare errori di runtime.

android:hasFragileUserData
Se mostrare all'utente una richiesta di conservano i dati dell'app quando l'utente la disinstalla. Il valore predefinito è "false".
android:hardwareAccelerated
Se il rendering con accelerazione hardware è abilitato per tutti attività e viste in questa applicazione. È "true" se è attivata e "false" in caso contrario. Se imposti il valore predefinito, è "true" minSdkVersion o targetSdkVersion a "14" o un livello superiore. Altrimenti, è "false".

A partire da Android 3.0 (livello API 11), un renderer OpenGL con accelerazione hardware disponibili per le applicazioni al fine di migliorare le prestazioni di molte grafiche 2D comuni operazioni. Quando è attivato il renderer con accelerazione hardware, la maggior parte delle operazioni in Canvas, Paint, Xfermode, ColorFilter, Shader e Fotocamera sono più rapidi.

Ciò si traduce in animazioni più fluide, scorrimento più fluido e la reattività generale, anche per le applicazioni che non utilizzano alle librerie OpenGL del framework.

Non tutte le operazioni OpenGL 2D vengono velocizzate. Se attivi il renderer con accelerazione hardware, testa l'applicazione in modo che possa utilizzare il renderer senza errori.

Per ulteriori informazioni, leggi Accelerazione hardware guida.

android:icon
Un'icona per l'applicazione nel suo complesso e un'icona predefinita per per ognuno dei componenti dell'applicazione. Visualizza la persona Attributi icon per <activity>, <activity-alias>, <service>, <receiver> e <provider> elementi.

Questo attributo è impostato come riferimento a una risorsa drawable che contiene dell'immagine, ad esempio "@drawable/icon". Non ci sono icone predefinite.

android:isGame
Se l'applicazione è un gioco. Il sistema potrebbe raggruppare le applicazioni classificate per giocare oppure mostrarle separatamente dalle altre applicazioni. Il valore predefinito è "false".
di Gemini Advanced.
android:isMonitoringTool

Indica che questa applicazione è progettata per monitorare altre persone.

Nota : se un'app dichiara questo attributo nel file manifest, lo sviluppatore deve segui le Stalkerware norme per pubblicare l'app su Google Play.

Non esiste un valore predefinito. Lo sviluppatore deve specificare uno dei seguenti valori:

ValoreDescrizione
"parental_control"Per app si rivolge al Controllo genitori ed è rivolto nello specifico ai genitori che vogliono mantenere i propri figli in tutta sicurezza.
"enterprise_management"Per app si rivolge alle aziende che vogliono gestire e monitorare i dispositivi dati ai dipendenti.
"other"L'app si rivolge a un uso non altrimenti specificato in questa tabella.
android:killAfterRestore

Se l'applicazione termina dopo la sua sono state ripristinate durante un'operazione di ripristino dell'intero sistema. Le operazioni di ripristino di un pacchetto singolo non causano mai è stato arrestato. Le operazioni di ripristino dell'intero sistema di solito vengono eseguite una sola volta durante la configurazione iniziale dello smartphone. Le applicazioni di terze parti normalmente devono utilizzare questo attributo.

Il valore predefinito è "true", il che significa che, dopo che l'applicazione termina di elaborare i dati durante un ripristino dell'intero sistema, il sistema termina.

android:largeHeap

Indica se i processi dell'applicazione sono creati con un heap Dalvik di grandi dimensioni. Vale per tutti i processi creati per l'applicazione. Si applica solo alla prima applicazione caricata in un e il processo di sviluppo. Se utilizzi un ID utente condiviso per consentire a più applicazioni di utilizzare un processo, saranno tutte devono utilizzare questa opzione in modo coerente per evitare risultati imprevedibili.

La maggior parte delle app non ha bisogno di questa funzionalità e si concentra invece sulla riduzione dell'utilizzo di memoria complessivo per il miglioramento delle prestazioni. L'attivazione di questa opzione non garantisce inoltre un aumento fisso della memoria disponibile, perché alcuni dispositivi sono vincolati dalla memoria totale disponibile.

Per eseguire query sulla dimensione della memoria disponibile durante il runtime, utilizza i metodi getMemoryClass() o getLargeMemoryClass().

android:label
Un'etichetta leggibile dall'utente per l'applicazione nel suo complesso e un'etichetta predefinita un'etichetta per ciascuno dei componenti dell'applicazione. Visualizza la persona Attributi label per <activity>, <activity-alias>, <service>, <receiver> e <provider> elementi.

L'etichetta è impostata come riferimento a una risorsa stringa, in modo che può essere localizzata come altre stringhe nell'interfaccia utente. Tuttavia, per comodità durante lo sviluppo dell'applicazione, può anche essere impostato come stringa non elaborata.

android:logo
Un logo per l'applicazione nel suo complesso e il logo predefinito per le attività. Questo attributo è impostato come riferimento a una risorsa drawable che contiene dell'immagine, ad esempio "@drawable/logo". Non esiste un logo predefinito.
android:manageSpaceActivity
Il nome completo di una sottoclasse Activity che il sistema viene avviato per consentire agli utenti di gestire la memoria occupata dall'applicazione sul dispositivo. L'attività viene dichiarata anche con Elemento <activity>.
android:name
Il nome completo di un Application implementata per l'applicazione. Quando la procedura di richiesta , questa classe viene creata prima di qualsiasi altro comando componenti.

La sottoclasse è facoltativa. La maggior parte delle applicazioni non ne ha bisogno. In assenza di una sottoclasse, Android utilizza un'istanza Application corso.

android:networkSecurityConfig

Specifica il nome del file XML che contiene Sicurezza della rete configurazione. Il valore è un riferimento al file di risorse XML contenente la configurazione.

Questo attributo è stato aggiunto nel livello API 24.

android:permission
Il nome di un'autorizzazione di cui i clienti hanno bisogno per interagire con l'applicazione. Questo attributo consente di impostare comodamente valida per tutti i componenti dell'applicazione. È sovrascritto impostando gli attributi permission di singoli componenti.

Per ulteriori informazioni sulle autorizzazioni, consulta Autorizzazioni nella panoramica del file manifest dell'app Suggerimenti per la sicurezza.

android:persistent
Verifica se l'applicazione rimane in esecuzione sempre. È "true" in caso affermativo e "false" in caso contrario. Il valore predefinito è "false". In genere le applicazioni non impostano questo flag. La modalità di persistenza è pensata solo per alcune applicazioni di sistema.
android:process
Il nome di un processo in cui vengono eseguiti tutti i componenti dell'applicazione. Ogni componente può sostituire questa impostazione predefinita impostando un proprio process .

Per impostazione predefinita, Android crea un processo per un'applicazione quando dei suoi componenti. Tutti i componenti vengono quindi eseguiti in questo processo. Il nome del processo predefinito corrisponde al nome del pacchetto impostato dalla Elemento <manifest>.

Impostando questo attributo sul nome di un processo condiviso con un altro puoi organizzare l'esecuzione dei componenti di entrambe le applicazioni lo stesso processo, ma solo se le due applicazioni condividono anche ID utente e siano firmati con lo stesso certificato.

Se il nome assegnato a questo attributo inizia con i due punti (:), viene privato dell'applicazione, viene creato quando è necessario. Se il nome del processo inizia con un carattere minuscolo, un processo globale di quel nome. Un processo globale può essere condiviso con altri delle applicazioni, riducendo l'utilizzo delle risorse.

android:restoreAnyVersion
Indica che l'applicazione è pronta per tentare il ripristino di qualsiasi set di dati di cui è stato eseguito il backup, anche se il backup è stato archiviato da una versione più recente dell'applicazione rispetto a quella attualmente installata sul dispositivo. Impostazione questo attributo a "true" consente a Gestione backup il tentativo di eseguire un ripristino anche se la mancata corrispondenza della versione suggerisce che i dati sono incompatibile. Da usare con cautela.

Il valore predefinito di questo attributo è "false".

android:requestLegacyExternalStorage

Indica se l'applicazione vuole disattivare archiviazione con ambito.

Nota:a seconda delle modifiche relative alle norme o all'app compatibilità, il sistema potrebbe non soddisfare questa richiesta di disattivazione.

android:requiredAccountType
Specifica il tipo di account richiesto dall'applicazione per funzionare. Se la tua app richiede un Account, il valore di questo attributo deve corrispondono all'autenticatore dell'account. tipo usato dalla tua app, come definito da AuthenticatorDescription, ad esempio "com.google".

Il valore predefinito è nullo e indica che l'applicazione possono funzionare senza alcun account.

Poiché i profili con limitazioni non puoi aggiungere account. Se specifichi questo attributo, la tua app non è disponibile per un profilo con limitazioni, a meno che non dichiari anche android:restrictedAccountType con lo stesso valore.

Attenzione: Se i dati dell'account possono rivelare informazioni che consentono l'identificazione personale, è importante di dichiarare questo attributo e lasciare android:restrictedAccountType nullo, in modo che i profili con limitazioni non possano utilizzare la tua app per accedere a informazioni personali dell'utente proprietario.

Questo attributo è stato aggiunto nel livello API 18.

android:resizeableActivity

Specifica se l'app supporta la modalità multi-finestra. Tu puoi impostare questo attributo in <activity> oppure Elemento <application>.

Se imposti questo attributo su "true", l'utente può avviare l'attività in schermo diviso e in formato libero. Se imposti l'attributo su "false", l'app non possono essere testati o ottimizzati per un ambiente multi-finestra. Il sistema può imposta comunque l'attività in modalità multi-finestra con la modalità di compatibilità applicata.

L'impostazione di questo attributo su "true" non garantisce che siano presenti altre app in modalità multi-finestra visibili sullo schermo, come Picture in picture su altri display. Pertanto, l'impostazione di questo flag non significa che la tua app dispone di accesso esclusivo alle risorse.

Per le app che hanno come target il livello API 24 o superiore, il valore predefinito è "true".

Se la tua app ha come target il livello API 31 o versioni successive, questo attributo funziona in modo diverso sulle app di piccole e grandi dimensioni. schermate:

  • Schermi grandi (sw >= 600 dp): tutte le app supportano la modalità multi-finestra. L'attributo indica se un'app può essere ridimensionata, non se supporta la modalità multi-finestra. Se resizeableActivity="false", l'app viene attivata in modalità di compatibilità quando necessario per essere conformi alle dimensioni di visualizzazione.
  • Schermi piccoli (sw < 600 dp): se resizeableActivity="true" e il minimo larghezza e altezza minima dell'attività principale rientrano nei requisiti della modalità multi-finestra, supporta la modalità multi-finestra. Se resizeableActivity="false", l'app non supportano la modalità multi-finestra indipendentemente dalla larghezza e dall'altezza minime dell'attività.

Nota: i produttori di dispositivi possono eseguire l'override del livello API 31 comportamento degli utenti.

Questo attributo è stato aggiunto nel livello API 24.

Nota: il valore dell'attività principale di un'attività viene applicato a tutti attività aggiuntive avviate nell'attività. Vale a dire, se l'attività principale è ridimensionabile un'attività, il sistema tratta tutte le altre attività come ridimensionabile. Se l'attività principale non è ridimensionabile, l'altra e le attività dell'attività non sono ridimensionabili.

android:restrictedAccountType
Specifica il tipo di account richiesto da questa applicazione e indica che i profili con limitazioni Possono accedere agli account che appartengono all'utente proprietario. Se la tua app richiede un Account e i profili con limitazioni possono accedere agli account dell'utente principale, il valore di questo attributo deve corrispondono al tipo di autenticazione dell'account utilizzato dalla tua app, definito da AuthenticatorDescription, ad esempio "com.google".

Il valore predefinito è null e indica che l'applicazione può funzionare senza alcun .

Attenzione: Se specifichi questo attributo, i profili con limitazioni potranno utilizzare i tuoi app con account che appartengono all'utente proprietario, che potrebbero rivelare informazioni personali informazioni. Se l'account potrebbe rivelare dettagli personali, non utilizza questo attributo. Invece, dichiara l'attributo android:requiredAccountType per rendere la tua app non disponibile per i profili con limitazioni.

Questo attributo è stato aggiunto nel livello API 18.

android:supportsRtl

Dichiara se la tua applicazione è disposta a supportare layout da destra a sinistra (RTL).

Se viene impostato su "true" e targetSdkVersion sia impostato su 17 o superiore, varie API RTL vengono attivati e utilizzati dal sistema in modo che la tua app possa mostrare i layout RTL. Se questo criterio viene impostato su "false" o se targetSdkVersion è impostato su 16 o su un valore inferiore, le API RTL vengono ignorate o non hanno effetto e la tua app si comporta allo stesso modo indipendentemente dal layout direzione associata alla scelta delle impostazioni internazionali dell'utente. In altre parole, i layout sono sempre da sinistra a destra.

Il valore predefinito di questo attributo è "false".

Questo attributo è stato aggiunto nel livello API 17.

android:taskAffinity
Un nome di affinità che si applica a tutte le attività all'interno dell'applicazione, tranne quelli che impostano un'affinità diversa con la propria taskAffinity attributi. Visualizza questo attributo per ulteriori informazioni.

Per impostazione predefinita, tutte le attività all'interno di un'applicazione condividono lo stesso di affinità. Il nome di questa affinità è uguale al nome del pacchetto impostato dal Elemento <manifest>.

android:testOnly
Indica se l'applicazione è solo a scopo di test. Ad esempio: potrebbe esporre funzionalità o dati all'esterno di se stesso che potrebbero causare un ma utile per i test. Questo tipo di APK installa solo tramite adb. Non puoi pubblicarla su Google Play.

Android Studio aggiunge automaticamente questo attributo quando fai clic su Esegui .

android:theme
Un riferimento a una risorsa di stile che definisce un tema predefinito per tutti attività nell'applicazione. Le singole attività possono avere la priorità per impostazione predefinita impostando il proprio theme attributi. Per ulteriori informazioni, visita la pagina Stili e temi.
android:uiOptions
Opzioni aggiuntive per l'UI di un'attività. Deve essere uno dei seguenti valori:
ValoreDescrizione
"none"Nessuna opzione UI aggiuntiva. Questa è l'impostazione predefinita.
"splitActionBarWhenNarrow"Aggiunge una barra al parte inferiore dello schermo per visualizzare le attività nella barra dell'app, nota anche come barra delle azioni, quando vincolato per lo spazio orizzontale, ad esempio in modalità verticale su uno smartphone. Invece di un piccolo numero di attività visualizzate nella barra delle app nella parte superiore dello schermo, nella barra delle app si divide nella sezione di navigazione superiore e nella barra in basso per le attività. Ciò significa che una la quantità di spazio disponibile per le attività, la navigazione e il titolo elementi in alto. Le voci di menu non sono suddivise tra le due barre. Vengono sempre visualizzati in sinergia.

Per ulteriori informazioni sulla barra delle app, vedi Aggiungere la barra delle app.

Questo attributo è stato aggiunto nel livello API 14.

android:usesCleartextTraffic
Indica se l'app intende utilizzare traffico di rete con testo in chiaro, ad esempio HTTP con testo in chiaro. Il valore predefinito per le app che hanno come target il livello API 27 o un livello inferiore è "true". App che Il livello API target 28 o superiore è impostato su "false" per impostazione predefinita.

Se l'attributo è impostato su "false", i componenti della piattaforma, ad esempio HTTP e FTP stack, DownloadManager e MediaPlayer, rifiuta richieste dell'app di usare il traffico con testo in chiaro.

Le librerie di terze parti sono vivamente incoraggiate a rispettare questa dell'ambientazione. Il motivo principale per evitare il traffico di testo in chiaro è la mancanza di riservatezza, l'autenticità e le protezioni contro le manomissioni. Un utente malintenzionato di rete può intercettare i contenuti trasmessi dati, nonché di modificarli senza che vengano rilevati.

Questo flag viene rispettato secondo il criterio del "best effort" perché è impossibile impedire tutto il testo traffico proveniente dalle app Android in base al livello di accesso fornito. Ad esempio, c'è non ci aspettiamo che l'API Socket rispetti questo flag, perché non è in grado di determinare se il traffico è in testo non crittografato.

Tuttavia, la maggior parte il traffico di rete proveniente dalle applicazioni viene gestito da stack e componenti di rete di livello superiore, per rispettare la segnalazione leggendola ApplicationInfo.flags o NetworkSecurityPolicy.isCleartextTrafficPermitted().

Nota: WebView rispetta questo attributo per di applicazioni destinate al livello API 26 o superiore.

Durante lo sviluppo dell'app, è possibile usare StrictMode per identificare il traffico di testo in chiaro proveniente dall'app. Per ulteriori informazioni, vedi StrictMode.VmPolicy.Builder.detectCleartextNetwork().

Questo attributo è stato aggiunto nel livello API 23.

Questo flag viene ignorato su Android 7.0 (livello API 24) e versioni successive se un criterio di sicurezza di rete Android La configurazione è presente.

android:vmSafeMode
Indica se l'app vuole che la macchina virtuale (VM) funzioni in modalità provvisoria. Il valore predefinito è "false".

Questo attributo è stato aggiunto nel livello API 8, dove il valore "true" ha disattivato il compilatore Dalvik just-in-time (JIT).

Questo attributo è stato adattato nel livello API 22, in cui un valore "true" ha disattivato il compilatore ART in anticipo (AOT).

introdotto in:
Livello API 1
vedi anche:
<activity>
<service>
<receiver>
<provider>