- :
<application android:allowTaskReparenting=["true" | "false"] android:allowBackup=["true" | "false"] android:allowClearUserData=["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>
- contenute in:
<manifest>
- può contenere:
<activity>
<activity-alias>
<meta-data>
<service>
<receiver>
<profileable>
<provider>
<uses-library>
<uses-native-library>
- description:
- La dichiarazione dell'applicazione. Questo elemento contiene elementi secondari che dichiarano ciascuno dei componenti dell'applicazione e include attributi che possono influire su tutti i componenti.
Molti di questi attributi, come
icon
,label
,permission
,process
,taskAffinity
eallowTaskReparenting
, impostano valori predefiniti per gli attributi corrispondenti degli elementi del componente. Altre, comedebuggable
,enabled
,description
eallowClearUserData
, impostano valori per l'applicazione nel suo insieme e non vengono sostituite dai componenti. - attributi
android:allowTaskReparenting
- Indica se le attività definite dall'applicazione possono essere spostate
dall'attività che le ha avviate a quella per la quale hanno un'affinità quando
l'attività viene messa in primo piano. Sono
"true"
se possono effettuare lo spostamento e"false"
se devono rimanere nell'attività da cui hanno iniziato. Il valore predefinito è"false"
.L'elemento
<activity>
ha un proprio attributoallowTaskReparenting
che può sostituire il valore impostato qui. android:allowBackup
Se consentire all'applicazione di partecipare all'infrastruttura di backup e ripristino. Se questo attributo è impostato su
"false"
, non verrà mai eseguito alcun backup o ripristino dell'applicazione, anche da un backup completo del sistema che altrimenti fa sì che tutti i dati dell'applicazione vengano salvati utilizzandoadb
. 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 della tua app.
Tuttavia, puoi disattivare il backup e il ripristino basati su cloud dei file della tua app impostando questo attributo su
"false"
, anche se la tua app ha come target Android 12 (livello API 31) o versioni successive.Per maggiori informazioni, consulta la sezione relativa a backup e ripristino della pagina che descrive le modifiche del comportamento per le app che hanno come target Android 12 (livello API 31) o versioni successive.
android:allowClearUserData
Se consentire all'applicazione di reimpostare i dati utente. Questi dati includono flag, ad esempio se l'utente ha visualizzato descrizioni comando introduttive, nonché impostazioni e preferenze personalizzabili dall'utente. Il valore predefinito di questo attributo è
"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 questo attributo nei file manifest.
Per ulteriori informazioni, consulta la panoramica del backup dei dati.
android:allowNativeHeapPointerTagging
Indica se l'app abilita la funzionalità di tagging Puntatore heap. Il valore predefinito di questo attributo è
"true"
.Nota: la disattivazione di questa funzionalità non risolve il problema di integrità del codice sottostante. I dispositivi hardware futuri potrebbero non supportare questo tag manifest.
Per ulteriori informazioni, consulta la sezione Indicatori taggati.
android:appCategory
Dichiara la categoria di questa app. Le categorie vengono utilizzate per raggruppare più app in gruppi significativi, ad esempio per riassumere l'utilizzo della batteria, della rete o del disco. Definisci questo valore solo per le app che rientrano in una delle categorie specifiche.
Deve essere uno dei seguenti valori costanti.
Valore Descrizione accessibility
App che sono principalmente app di accessibilità, come screen reader. audio
App che funzionano principalmente con audio o musica, ad esempio i lettori musicali. game
App che sono principalmente giochi. image
App che funzionano principalmente con immagini o foto, ad esempio le app fotocamera o galleria. maps
App che sono principalmente app di mappatura, come le app di navigazione. news
App che sono principalmente app di notizie, come giornali, riviste o app sportive. productivity
App che sono principalmente app di produttività, ad esempio app di spazio di archiviazione sul cloud o di lavoro. social
App che sono principalmente app social, ad esempio app di messaggistica, comunicazione, email o di social network. video
App che funzionano principalmente con video o film, ad esempio app di video in streaming. android:backupAgent
- Il nome della classe che implementa l'agente di backup dell'applicazione, una sottoclasse
BackupAgent
. Il valore dell'attributo è un nome completo di classe, come"com.example.project.MyBackupAgent"
. Tuttavia, per riassumere, se il primo carattere del nome è un punto, ad esempio".MyBackupAgent"
, viene aggiunto al nome del pacchetto specificato nell'elemento<manifest>
.Non esiste un valore predefinito. Il nome deve essere specifico.
android:backupInForeground
- Indica che è possibile eseguire le operazioni di backup automatico su questa app anche se si trova in uno stato equivalente in primo piano. 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 sul comportamento dell'app quando l'app è attiva.Il valore predefinito è
"false"
, il che significa che il sistema operativo evita di eseguire il backup dell'app mentre è in esecuzione in primo piano, ad esempio un'app di musica che sta riproducendo attivamente musica tramite un servizio in statostartForeground()
. android:banner
- Una risorsa disegnabile che fornisce un banner grafico esteso per l'elemento associato. Utilizzalo con il tag
<application>
per fornire un banner predefinito per tutte le attività dell'applicazione oppure con il tag<activity>
per fornire un banner per un'attività specifica.Il sistema utilizza il banner per rappresentare un'app nella schermata Home di Android TV. Di conseguenza, specificalo solo per le applicazioni con un'attività che gestisce l'intent
CATEGORY_LEANBACK_LAUNCHER
.Questo attributo è impostato come riferimento a una risorsa disegnabile contenente l'immagine, ad esempio
"@drawable/banner"
. Non esiste un banner predefinito.Per ulteriori informazioni, consulta l'articolo Fornire un banner nella schermata Home.
android:dataExtractionRules
Le applicazioni possono impostare questo attributo su una risorsa XML in cui specificano le regole che determinano quali file e directory possono essere copiati dal dispositivo nell'ambito di operazioni di backup o trasferimento.
Per informazioni sul formato del file XML, consulta Backup e ripristino.
android:debuggable
- Indica se è possibile eseguire il debug dell'applicazione anche durante l'esecuzione
su un dispositivo in modalità utente. È
"true"
se può essere e"false"
in caso contrario. Il valore predefinito è"false"
. android:description
- Testo dell'applicazione leggibile dall'utente, che è più lungo e più descrittivo dell'etichetta dell'applicazione. Il valore viene impostato come riferimento a una risorsa stringa. A differenza dell'etichetta, non può essere una stringa non elaborata. Non è presente alcun valore predefinito.
android:enabled
- Indica se il sistema Android può creare un'istanza
dei componenti dell'applicazione. È
"true"
se può e"false"
in caso contrario. Se il valore è"true"
, l'attributoenabled
di ogni componente determina se quel componente è abilitato. Se il valore è"false"
, sostituisce i valori specifici del componente e tutti i componenti vengono disattivati.Il valore predefinito è
"true"
. android:extractNativeLibs
- Questo attributo indica se il programma di installazione dei pacchetti estrae le librerie native dall'APK al file system. Se il criterio viene impostato su
"false"
, le librerie native vengono archiviate nell'APK in formato non compresso. Anche se l'APK potrebbe avere dimensioni maggiori, l'applicazione si carica più velocemente perché le librerie vengono caricate direttamente dall'APK in fase di runtime.Il valore predefinito di
extractNativeLibs
dipende daminSdkVersion
e dalla versione 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 contenente le regole di backup complete per il backup automatico.
Queste regole determinano i file di cui eseguire il backup. Per ulteriori informazioni, consulta la sintassi di configurazione XML per Backup automatico.
Questo attributo è facoltativo. Se non è specificato, per impostazione predefinita 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 il Backup automatico sui dispositivi in cui è disponibile. Se è impostata su
"true"
, l'app esegue il backup automatico se installata su un dispositivo con Android 6.0 (livello API 23) o versioni successive. Sui dispositivi meno recenti, l'app ignora questo attributo ed esegue backup di chiave/valore.Il valore predefinito è
"false"
. android:gwpAsanMode
- Questo attributo indica se utilizzare
GWP-ASan, una funzionalità nativa di allocatore della memoria che consente
di trovare bug use-after-free e heap-buffer-overflow.
Il valore predefinito è
"never"
. android:hasCode
- Indica se l'applicazione contiene codice DEX, cioè codice che utilizza
il linguaggio di programmazione Kotlin o Java.
È
"true"
in caso affermativo e"false"
in caso contrario. Quando il valore è"false"
, il sistema non tenta di caricare alcun codice dell'applicazione durante l'avvio dei componenti. Il valore predefinito è"true"
.Se l'applicazione include codice nativo (C/C++) ma nessun codice DEX, questo valore deve essere impostato su
"false"
. Se il criterio viene 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 in base alle dipendenze. Se l'applicazione dipende da un AAR che utilizza il codice Java/Kotlin o direttamente da un JAR,
app:hasCode
deve essere"true"
oppure omesso perché è l'impostazione predefinita.Ad esempio, la tua app potrebbe supportare la distribuzione delle caratteristiche di Google Play e includere moduli di funzionalità che non generano file DEX, ottimizzati in bytecode per la piattaforma Android. In tal caso, devi impostare questa proprietà su
"false"
nel file manifest del modulo per evitare errori di runtime. android:hasFragileUserData
- Indica se mostrare all'utente una richiesta di conservazione dei dati dell'app quando l'utente disinstalla l'app. Il valore predefinito è
"false"
. android:hardwareAccelerated
- Indica se il rendering con accelerazione hardware è abilitato per tutte
le attività e le visualizzazioni in questa applicazione. È
"true"
se è abilitato e"false"
in caso contrario. Il valore predefinito è"true"
se impostiminSdkVersion
otargetSdkVersion
su"14"
o un valore superiore. Altrimenti, è"false"
.A partire da Android 3.0 (livello API 11), per le applicazioni è disponibile un renderer OpenGL con accelerazione hardware, allo scopo di migliorare le prestazioni di molte operazioni comuni relative alla grafica 2D. Quando il renderer con accelerazione hardware è attivato, la maggior parte delle operazioni in Canvas, Paint, Xfermode, ColorFilter, Shader e Camera vengono accelerate.
Questo si traduce in animazioni più fluide, scorrimento più fluido e migliore reattività in generale, anche per applicazioni che non utilizzano esplicitamente le librerie OpenGL del framework.
Non tutte le operazioni OpenGL 2D vengono accelerate. Se attivi il renderer con accelerazione hardware, testa l'applicazione in modo che possa utilizzare il renderer senza errori.
Per ulteriori informazioni, leggi la guida sull'accelerazione hardware.
android:icon
- Un'icona per l'applicazione nel suo complesso e l'icona predefinita per ciascun componente dell'applicazione. Visualizza i singoli attributi
icon
degli elementi<activity>
,<activity-alias>
,<service>
,<receiver>
e<provider>
.Questo attributo è impostato come riferimento a una risorsa disegnabile contenente l'immagine, come
"@drawable/icon"
. Non esiste un'icona predefinita. android:isGame
- Se l'applicazione è un gioco. Il sistema può raggruppare le applicazioni
classificate come giochi o visualizzarle separatamente da altre. Il valore predefinito è
"false"
. android:isMonitoringTool
Indica che l'applicazione è progettata per monitorare altri individui.
Nota: se un'app dichiara questo attributo nel file manifest, lo sviluppatore deve seguire le norme relative agli stalkerware per pubblicare l'app su Google Play.
Non è presente alcun valore predefinito. Lo sviluppatore deve specificare uno dei seguenti valori:
Valore Descrizione "parental_control"
L'app si rivolge al Controllo genitori ed è specificamente rivolta ai genitori che vogliono proteggere i propri figli. "enterprise_management"
L'app è rivolta alle aziende che vogliono gestire e monitorare i dispositivi dati ai dipendenti. "other"
L'app si rivolge a un caso d'uso non specificato altrimenti in questa tabella. android:killAfterRestore
- Indica se l'applicazione termina dopo che le relative impostazioni sono state ripristinate durante un'operazione di ripristino dell'intero sistema.
Le operazioni di ripristino per un singolo pacchetto non causano mai
l'arresto dell'applicazione. Le operazioni di ripristino dell'intero sistema in genere vengono eseguite una sola volta, alla prima configurazione dello smartphone. Le applicazioni di terze parti in genere
non devono usare questo attributo.
Il valore predefinito è
"true"
, il che significa che l'applicazione termina l'elaborazione dei dati durante un ripristino dell'intero sistema. android:largeHeap
- Indica se i processi dell'applicazione vengono creati con un grande heap Dalvik. Questo vale per tutti i processi creati per l'applicazione. Si applica solo alla prima applicazione caricata in un processo. Se utilizzi uno User-ID condiviso per consentire a più applicazioni di utilizzare un processo, tutte
devono utilizzare questa opzione in modo coerente per evitare risultati imprevedibili.
La maggior parte delle app non ne ha bisogno e si concentra sulla riduzione dell'utilizzo complessivo di memoria per migliorare le 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 una query sulla dimensione della memoria disponibile in fase di runtime, utilizza i metodi
getMemoryClass()
ogetLargeMemoryClass()
. android:label
- Un'etichetta leggibile per l'applicazione nel suo insieme e un'etichetta predefinita per ogni componente dell'applicazione. Visualizza i singoli attributi
label
degli elementi<activity>
,<activity-alias>
,<service>
,<receiver>
e<provider>
.L'etichetta è impostata come riferimento a una risorsa stringa, così può essere localizzata come altre stringhe nell'interfaccia utente. Tuttavia, per praticità, durante lo sviluppo dell'applicazione, puoi anche impostarla 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 disegnabile contenente
l'immagine, come
"@drawable/logo"
. Non esiste un logo predefinito. android:manageSpaceActivity
- Il nome completo di una sottoclasse
Activity
avviata dal sistema per consentire agli utenti di gestire la memoria occupata dall'applicazione sul dispositivo. L'attività viene dichiarata anche con un elemento<activity>
. android:name
- Il nome completo di una sottoclasse
Application
implementata per l'applicazione. All'avvio del processo di applicazione, viene creata un'istanza di questa classe prima di qualsiasi componente dell'applicazione.La sottoclasse è facoltativa. La maggior parte delle applicazioni non ne ha bisogno. In assenza di una sottoclasse, Android utilizza un'istanza della classe di base
Application
. android:networkSecurityConfig
Specifica il nome del file XML che contiene la configurazione della sicurezza di rete dell'applicazione. 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 necessaria ai client per interagire con l'applicazione. Questo attributo consente di impostare
un'autorizzazione che si applica a tutti i componenti dell'applicazione. Viene sovrascritto impostando gli attributi
permission
di singoli componenti.Per ulteriori informazioni sulle autorizzazioni, consulta la sezione Autorizzazioni nella panoramica del file manifest dell'app e i Suggerimenti per la sicurezza.
android:persistent
- Se l'applicazione rimane in esecuzione sempre. È
"true"
se sì e"false"
in caso contrario. Il valore predefinito è"false"
. In genere le applicazioni non impostano questo flag. La modalità di persistenza è destinata solo ad 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 il proprio attributo
process
.Per impostazione predefinita, Android crea un processo per un'applicazione quando deve essere eseguito il primo dei suoi componenti. In questo processo vengono eseguiti tutti i componenti. Il nome del processo predefinito corrisponde al nome del pacchetto impostato dall'elemento
<manifest>
.Impostando questo attributo su un nome di processo condiviso con un'altra applicazione, puoi fare in modo che i componenti di entrambe le applicazioni vengano eseguiti nello stesso processo, ma solo se anche le due applicazioni condividono un ID utente e sono firmate con lo stesso certificato.
Se il nome assegnato a questo attributo inizia con i due punti (
:
), quando è necessario viene creato un nuovo processo, privato per l'applicazione. Se il nome del processo inizia con un carattere minuscolo, viene creato un processo globale di quel nome. Un processo globale può essere condiviso con altre 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 dell'applicazione più recente rispetto a quella attualmente installata sul dispositivo. L'impostazione di questo attributo su
"true"
consente a Gestione backup di tentare un ripristino anche se una mancata corrispondenza della versione indica che i dati non sono compatibili. Usa questa opzione con cautela.Il valore predefinito di questo attributo è
"false"
. android:requestLegacyExternalStorage
-
Indica se l'applicazione vuole disattivare l'archiviazione basata su ambito.
Nota: a seconda delle modifiche relative alla compatibilità con le norme o le app, il sistema potrebbe non soddisfare la richiesta di disattivazione.
android:requiredAccountType
- Specifica il tipo di account richiesto dall'applicazione per il funzionamento.
Se la tua app richiede un valore
Account
, il valore di questo attributo deve corrispondere al tipo di autenticatore account utilizzato dalla tua app, come definito daAuthenticatorDescription
, ad esempio"com.google"
.Il valore predefinito è null e indica che l'applicazione può funzionare senza account.
Poiché i profili con limitazioni non possono aggiungere account, se specifichi questo attributo, la tua app non sarà disponibile da un profilo con limitazioni, a meno che non dichiari anche
android:restrictedAccountType
con lo stesso valore.Attenzione: se i dati dell'account potrebbero rivelare informazioni che consentono l'identificazione personale, è importante dichiarare questo attributo e lasciare nullo
android:restrictedAccountType
, in modo che i profili con limitazioni non possano utilizzare la tua app per accedere a informazioni personali che appartengono all'utente proprietario.Questo attributo è stato aggiunto nel livello API 18.
android:resizeableActivity
-
Consente di specificare se l'app supporta la modalità multi-finestra. Puoi impostare questo attributo nell'elemento
<activity>
o<application>
.Se imposti questo attributo su
"true"
, l'utente può avviare l'attività in modalità schermo diviso e in formato libero. Se imposti l'attributo su”false”
, l'app non può essere testata o ottimizzata per un ambiente multi-finestra. Il sistema può comunque impostare l'attività in modalità multi-finestra con la modalità di compatibilità applicata.L'impostazione di questo attributo su
"true"
non garantisce che non ci siano altre app in modalità multi-finestra visibili sullo schermo, ad esempio Picture in picture o su altri display. Pertanto, l'impostazione di questo flag non significa che l'app ha accesso esclusivo alle risorse.Per le app che hanno come target il livello API 24 o un livello successivo, il valore predefinito è
"true"
.Se la tua app ha come target il livello API 31 o versioni successive, questo attributo funziona in modo diverso su schermi piccoli e grandi:
- Schermate 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 conformarsi alle dimensioni del display. - Schermate piccole (sw < 600 dp): se
resizeableActivity="true"
e l'altezza minima e la larghezza e l'altezza minima dell'attività principale soddisfano i requisiti della modalità multi-finestra, l'app supporta la modalità multi-finestra. SeresizeableActivity="false"
, l'app non supporta la modalità multi-finestra indipendentemente dall'altezza e dalla larghezza minime dell'attività.
Nota:i produttori di dispositivi possono ignorare il comportamento del livello API 31.
Questo attributo è stato aggiunto nel livello API 24.
Nota: il valore dell'attività principale di un'attività viene applicato a tutte le attività aggiuntive avviate nell'attività. Ciò significa che se l'attività root di un'attività è ridimensionabile, il sistema tratta tutte le altre attività nell'attività come ridimensionabili. Se l'attività root non è ridimensionabile, le altre attività nell'attività non sono ridimensionabili.
- Schermate 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
android:restrictedAccountType
- Specifica il tipo di account richiesto da questa applicazione e indica che i profili con limitazioni
possono accedere a questi 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 corrispondere al tipo di autenticatore account utilizzato dalla tua app, come definito daAuthenticatorDescription
, ad esempio"com.google"
.Il valore predefinito è null e indica che l'applicazione può funzionare senza account.
Attenzione: se specifichi questo attributo, i profili con limitazioni possono utilizzare la tua app con account che appartengono all'utente proprietario, che potrebbero rivelare informazioni che consentono l'identificazione personale. Se l'account potrebbe rivelare dettagli personali, non utilizzare questo attributo. Dichiara invece 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 questo valore è impostato su
"true"
etargetSdkVersion
è impostato su 17 o su un valore superiore, il sistema attiva e utilizza varie API RTL in modo che l'app possa visualizzare i layout RTL. Se il criterio viene impostato su"false"
o se il valoretargetSdkVersion
viene impostato su 16 o su un valore inferiore, le API RTL vengono ignorate o non hanno alcun effetto e l'app si comporta allo stesso modo indipendentemente dalla direzione di layout associata alla scelta delle impostazioni internazionali dell'utente. vale a dire che 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à nell'applicazione, ad eccezione di quelle che impostano un'affinità diversa con i propri attributi
taskAffinity
. Consulta questo attributo per ulteriori informazioni.Per impostazione predefinita, tutte le attività all'interno di un'applicazione condividono la stessa affinità. Il nome di quell'affinità è uguale al nome del pacchetto impostato dall'elemento
<manifest>
. android:testOnly
- Indica se l'applicazione è solo a scopo di test. Ad esempio, potrebbe esporre funzionalità o dati esterni all'account stesso che potrebbe causare un problema di sicurezza, ma essere utile per i test. Questo tipo di APK viene installato soltanto
tramite
adb
. Non puoi pubblicarlo 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 tutte
le attività nell'applicazione. Le singole attività possono ignorare il valore predefinito impostando i propri attributi
theme
. Per ulteriori informazioni, vedi Stili e temi. android:uiOptions
- Opzioni aggiuntive per l'UI di un'attività. Deve essere uno dei seguenti valori:
Valore Descrizione "none"
Nessuna opzione UI aggiuntiva. Questa è l'impostazione predefinita. "splitActionBarWhenNarrow"
Aggiunge una barra nella parte inferiore dello schermo per visualizzare le attività nella barra dell'app, nota anche come barra delle azioni, quando è vincolato allo spazio orizzontale, ad esempio in modalità verticale su un telefono. Anziché visualizzare un piccolo numero di attività nella barra delle app nella parte superiore dello schermo, la barra delle app si suddivide nella sezione di navigazione superiore e nella barra inferiore per le attività. Ciò significa che è disponibile una quantità ragionevole di spazio per le attività e per gli elementi di navigazione e titolo in alto. Le voci di menu non sono suddivise tra le due barre. Vengono sempre visualizzati insieme. 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 destinate al livello API 27 o a un livello precedente è
"true"
. Le app che hanno come target il livello API 28 o versioni successive vengono impostate automaticamente su"false"
.Se l'attributo è impostato su
"false"
, i componenti della piattaforma, ad esempio gli stack HTTP e FTP,DownloadManager
eMediaPlayer
, rifiutano le richieste dell'app di utilizzare il traffico in chiaro.Anche le librerie di terze parti consigliano di rispettare questa impostazione. Il motivo principale per evitare il traffico di testo in chiaro è la mancanza di riservatezza e autenticità e di protezioni contro le manomissioni. Un utente malintenzionato di rete può intercettare i dati trasmessi e modificarli senza essere rilevati.
Questo flag viene applicato secondo il criterio del "best effort" perché è impossibile impedire tutto il traffico di testo in chiaro proveniente dalle app Android, dato il livello di accesso fornito. Ad esempio, non è previsto che l'API
Socket
rispetterà questo flag, poiché non è in grado di determinare se il suo traffico è in chiaro.Tuttavia, la maggior parte del traffico di rete dalle applicazioni viene gestita da componenti e stack di rete di livello superiore, che possono rispettare questo flag leggendolo da
ApplicationInfo.flags
oNetworkSecurityPolicy.isCleartextTrafficPermitted()
.Nota:
WebView
rispetta questo attributo per le applicazioni che hanno come target il livello API 26 e livelli successivi.Durante lo sviluppo dell'app, è possibile utilizzare StrictMode per identificare il traffico di testo in chiaro proveniente dall'app. Per ulteriori informazioni, visita la pagina
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 è presente una configurazione di sicurezza della rete Android.
android:vmSafeMode
- Indica se l'app vuole che la macchina virtuale (VM) operi in modalità provvisoria. Il valore predefinito è
"false"
.Questo attributo è stato aggiunto nel livello API 8, dove il valore
"true"
ha disabilitato il compilatore just-in-time (JIT) Dalvik.Questo attributo è stato adattato nel livello API 22, dove un valore
"true"
ha disabilitato il compilatore ART (antitime of time, AOT).
A partire da AGP 4.2.0, l'opzione DSL
useLegacyPackaging
sostituisce l'attributo manifestextractNativeLibs
. UtilizzauseLegacyPackaging
nel filebuild.gradle
dell'app anzichéextractNativeLibs
nel file manifest per configurare il comportamento di compressione della libreria nativa. Per ulteriori informazioni, consulta la nota di rilascio Utilizzare la connessione DSL per pacchettizzare librerie native compresse.- introdotto in:
- Livello API 1
- Vedi anche:
<activity>
<service>
<receiver>
<provider>
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2024-04-19 UTC.
[]
[]
{
"last_modified": "Ultimo aggiornamento 2024-04-19 UTC.",
"state": ""
}