Lingua

MemoryBudgetInfo Classe

Definizione

Informazioni sul budget di memoria per un'applicazione.

[Android.Runtime.Register("android/content/pm/MemoryBudgetInfo", ApiSince=37, DoNotGenerateAcw=true)]
public sealed class MemoryBudgetInfo : Java.Lang.Object, Android.OS.IParcelable, IDisposable
[<Android.Runtime.Register("android/content/pm/MemoryBudgetInfo", ApiSince=37, DoNotGenerateAcw=true)>]
type MemoryBudgetInfo = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Ereditarietà
MemoryBudgetInfo
Attributi
Implementazioni

Commenti

Informazioni sul budget di memoria per un'applicazione. Le voci MemoryBudgetInfo vengono recuperate dalle <voci del budget> di memoria nel manifesto di un'applicazione e possono essere ottenute tramite PackageManager.getMemoryBudgets.

Un MemoryBudgetInfo dichiarato nel manifesto Android imposta un limite massimo sulla memoria disponibile per il pacchetto o per un processo all'interno del pacchetto. Le dichiarazioni MemoryBudgetInfo possono essere visualizzate a livello di applicazione e a livello di processo. I due sono indipendenti e nessuno degli altri esegue l'override dell'altro. In pratica, tuttavia, il budget più piccolo domina.

Ogni MemoryBudgetInfo ha uno stato e una funzionalità; questi due attributi determinano se e quando MemoryBudgetInfo è applicabile.

Lo stato è lo stato operativo del processo o dell'applicazione ed è uno di Primo piano, Percepibile o Background.

La funzionalità seleziona per il fattore di forma del dispositivo ed è una delle opzioni Non specificate, TV, Auto e Watch.

Un MemoryBudgetInfo è applicabile a un processo se la funzionalità non è specificata o se la sua funzionalità corrisponde al fattore di forma del dispositivo. Un memoryBudgetInfo si applica a un processo se applicabile al processo e lo stato MemoryBudgetInfo è minore o uguale allo stato operativo del processo. Le applicazioni hanno anche stato, che è approssimativamente lo stato più basso di qualsiasi processo in esecuzione nell'applicazione.

Un memoryBudgetInfo dichiara un limite superiore per la quantità di memoria che il processo o l'applicazione può usare. Il limite superiore viene calcolato da tre fattori:

maxMb è una quantità di memoria di base, espressa in MiB. Questo deve essere positivo.

additionalBytesPerPixel è un fattore di ridimensionamento: byte per pixel di visualizzazione. Deve essere diverso da negativo e il valore predefinito è zero.

additionalMbPerDensity è un fattore di ridimensionamento: densità di visualizzazione in tempi MiB. Deve essere diverso da negativo e il valore predefinito è zero.

Il limite effettivo viene calcolato come valore maxMb più i fattori di scala applicati alla visualizzazione predefinita del dispositivo.

Se un processo RSS supera il budget dichiarato, il kernel lo forza a eliminare la memoria. Questo significa in genere eliminare le pagine della cache dei file, ma potrebbe anche significare che una certa memoria verrà spostata per lo scambio. Nella maggior parte dei casi ciò si verifica senza alcun impatto sul processo, ma se il processo usa attivamente più memoria del limite di budget, il processo rallenterà man mano che le pagine vengono scambiate e quindi tornano indietro. Nel limite, il processo può essere ANR.

Informazioni di riferimento su Android per android.content.pm.MemoryBudgetInfo.

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.

Campi

Nome Descrizione
FeatureAutomotive
Obsoleti.

Indica che si MemoryBudgetInfo applica al fattore di forma dell'automobile.

FeatureLeanback
Obsoleti.

Indica che questo MemoryBudgetInfo vale per il fattore di forma tv.

FeatureUnspecified
Obsoleti.

Indica che è MemoryBudgetInfo generico e può essere applicato a qualsiasi fattore di forma.

FeatureWatch
Obsoleti.

Indica che si MemoryBudgetInfo applica al fattore di forma dell'orologio.

StateBackground
Obsoleti.

Indica che questa operazione MemoryBudgetInfo può essere applicata a un processo in background.

StateForeground
Obsoleti.

Indica che questa operazione MemoryBudgetInfo può essere applicata a un processo in primo piano (o in uno stato meno importante).

StatePerceptible
Obsoleti.

Indica che questo MemoryBudgetInfo può essere applicato a un processo che è percepibile (o in uno stato meno importante).

Proprietà

Nome Descrizione
AdditionalBytesPerDisplayPixel

Restituisce i byte aggiuntivi per pixel da cui verrà elevato il MemoryBudgetInfolimite.

AdditionalMbPerDensity

Restituisce la memoria aggiuntiva (in MiB) da cui verrà elevato il MemoryBudgetInfolimite, in base alla densità dello schermo del dispositivo.

Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Creator

Creatore che genera istanze di android.content.pm.MemoryBudgetInfo da un pacco.

Feature

Restituisce il fattore di forma a cui si applica l'oggetto MemoryBudgetInfo .

Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode

Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
JniManagedPeerState

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
JniPeerMembers

Ottiene i metadati JNI usati per accedere ai membri di questa associazione Java.

MaxMb

Restituisce il limite di memoria (in MiB) rappresentato da questo MemoryBudgetInfo oggetto.

PeerReference

Ottiene il riferimento all'oggetto JNI per questo peer Java.

(Ereditato da Object)
State

Restituisce lo stato del processo in cui si applica.MemoryBudgetInfo

ThresholdClass

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)
ThresholdType

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)

Metodi

Nome Descrizione
Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
DescribeContents()

Descrivere i tipi di oggetti speciali contenuti nella rappresentazione di marshalling di questa istanza di Parcelable.

Dispose()

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
Dispose(Boolean)

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
DisposeUnlessReferenced()

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
Equals(Object)

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
GetHashCode()

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
JavaFinalize()
Obsoleti.

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
Notify()

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
ToArray<T>()

Crea una matrice gestita da questo wrapper di matrice Java.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto .

(Ereditato da Object)
UnregisterFromRuntime()

Annulla la registrazione di questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
Wait()

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64, Int32)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Appiattire questo oggetto in un pacco.

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IJavaPeerable.Disposed()

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
IJavaPeerable.Finalized()

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Informazioni sul budget di memoria per un'applicazione.

(Ereditato da JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Rimuove questa istanza dalla ricerca dell'oggetto Java del runtime.

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Informazioni sul budget di memoria per un'applicazione.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a