MemoryBudgetInfo Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Informações de orçamento de memória para um aplicativo.
[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
- Herança
- Atributos
- Implementações
Comentários
Informações de orçamento de memória para um aplicativo. As entradas MemoryBudgetInfo são recuperadas de entradas de <orçamento> de memória no manifesto de um aplicativo e podem ser obtidas por meio de PackageManager.getMemoryBudgets.
Um MemoryBudgetInfo declarado no manifesto do Android define um teto na memória disponível para o pacote ou para um processo dentro do pacote. As declarações MemoryBudgetInfo podem aparecer no nível do aplicativo e no nível do processo. Os dois são independentes e nenhum substitui o outro. Na prática, no entanto, o orçamento menor domina.
Cada MemoryBudgetInfo tem um estado e um recurso; esses dois atributos determinam se e quando o MemoryBudgetInfo é aplicável.
O estado é o estado operacional do processo ou do aplicativo e é um de Primeiro Plano, Perceptible ou Plano de Fundo.
O recurso seleciona para o fator de formulário do dispositivo e é um de Não especificado, TV, Auto e Inspeção.
Um MemoryBudgetInfo é aplicável a um processo se seu recurso não for especificado ou se seu recurso corresponder ao fator de formulário do dispositivo. Um MemoryBudgetInfo se aplica a um processo se for aplicável ao processo e o estado MemoryBudgetInfo for menor ou igual ao estado operacional do processo. Os aplicativos também têm estado, que é aproximadamente o estado mais baixo de qualquer processo em execução no aplicativo.
Um MemoryBudgetInfo declara um limite superior na quantidade de memória que o processo ou aplicativo pode usar. O limite superior é calculado a partir de três fatores:
maxMb é uma quantidade de memória de linha de base, expressa em MiB. Isso deve ser positivo.
additionalBytesPerPixel é um fator de dimensionamento: bytes por pixel de exibição. Isso deve ser não negativo e o padrão é zero.
additionalMbPerDensity é um fator de dimensionamento: os tempos de MiB exibem densidade. Isso deve ser não negativo e o padrão é zero.
O limite real é calculado como o valor maxMb mais os fatores de escala aplicados à exibição padrão do dispositivo.
Se um processo RSS exceder seu orçamento declarado, o kernel o forçará a remover memória. Isso geralmente significa remover páginas de cache de arquivos, mas também pode significar que alguma memória será movida para troca. Na maioria dos casos, isso ocorre sem nenhum impacto no processo, mas se o processo estiver usando ativamente mais memória do que o limite de orçamento, o processo diminuirá à medida que as páginas forem trocadas e, em seguida, voltarão. No limite, o processo pode ser ANR.
Referência do Android para android.content.pm.MemoryBudgetInfo.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Campos
| Nome | Description |
|---|---|
| FeatureAutomotive |
Obsoleto.
Indica que isso |
| FeatureLeanback |
Obsoleto.
Indica que isso |
| FeatureUnspecified |
Obsoleto.
Indica que isso |
| FeatureWatch |
Obsoleto.
Indica que isso |
| StateBackground |
Obsoleto.
Indica que isso |
| StateForeground |
Obsoleto.
Indica que isso |
| StatePerceptible |
Obsoleto.
Indica que isso |
Propriedades
| Nome | Description |
|---|---|
| AdditionalBytesPerDisplayPixel |
Retorna os bytes adicionais por pixel pelos quais esse |
| AdditionalMbPerDensity |
Retorna a memória adicional (em MiB) pela qual esse |
| Class |
Retorna a classe de tempo de execução deste |
| Creator |
Um criador que gera instâncias de android.content.pm.MemoryBudgetInfo de um Pacote. |
| Feature |
Retorna o fator forma ao qual isso |
| Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
| JniIdentityHashCode |
Obtém o código de hash de identidade atribuído a esse par Java pelo runtime de interoperabilidade. (Herdado de Object) |
| JniManagedPeerState |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| JniPeerMembers |
Obtém os metadados JNI usados para acessar membros dessa associação Java. |
| MaxMb |
Retorna o limite de memória (em MiB) que isso |
| PeerReference |
Obtém a referência de objeto JNI para este par Java. (Herdado de Object) |
| State |
Retorna o estado do processo no qual isso |
| ThresholdClass |
Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. (Herdado de Object) |
| ThresholdType |
Essa API é compatível com a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. (Herdado de Object) |
Métodos
| Nome | Description |
|---|---|
| Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| DescribeContents() |
Descreva os tipos de objetos especiais contidos na representação em marshaled desta instância parcelável. |
| Dispose() |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| Dispose(Boolean) |
Libera os recursos mantidos por esse par Java. (Herdado de Object) |
| DisposeUnlessReferenced() |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| Equals(Object) |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| Equals(Object) |
Indica se algum outro objeto é "igual a" este. (Herdado de Object) |
| GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
| JavaFinalize() |
Obsoleto.
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
| Notify() |
Ativa um único thread que está aguardando no monitor desse objeto. (Herdado de Object) |
| NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle (Herdado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| ToArray<T>() |
Cria uma matriz gerenciada com base nesse wrapper de matriz Java. (Herdado de Object) |
| ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
| UnregisterFromRuntime() |
Cancela o registro desse par Java do runtime de interoperabilidade. (Herdado de Object) |
| Wait() |
Faz com que o thread atual aguarde até que seja despertado, normalmente sendo <notificado></em> ou <em>interrompido</em>. (Herdado de Object) |
| Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| Wait(Int64) |
Faz com que o thread atual aguarde até que seja ativado, normalmente sendo <notificado></em> ou <em>interrompido</em>, ou até que uma determinada quantidade de tempo real tenha decorrido. (Herdado de Object) |
| WriteToParcel(Parcel, ParcelableWriteFlags) |
Nivele esse objeto em um Pacote. |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IJavaPeerable.Disposed() |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| IJavaPeerable.Finalized() |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Informações de orçamento de memória para um aplicativo. (Herdado de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Remove essa instância da pesquisa de objeto Java do runtime. |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada pelo tempo de execução do Android. |
| JavaCast<TResult>(IJavaObject) |
Informações de orçamento de memória para um aplicativo. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |