Compartilhar via


IntentFilter Classe

Definição

Descrição estruturada dos valores de intenção a serem correspondidos.

[Android.Runtime.Register("android/content/IntentFilter", DoNotGenerateAcw=true)]
public class IntentFilter : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/content/IntentFilter", DoNotGenerateAcw=true)>]
type IntentFilter = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herança
IntentFilter
Atributos
Implementações

Comentários

Descrição estruturada dos valores de intenção a serem correspondidos. Um IntentFilter pode corresponder a ações, categorias e dados (por meio de seu tipo, esquema e/ou caminho) em uma Intent. Ele também inclui um valor de "prioridade" que é usado para solicitar vários filtros correspondentes.

Os objetos IntentFilter geralmente são criados em XML como parte do arquivo de um pacote android.R.styleable#AndroidManifest AndroidManifest.xml , usando android.R.styleable#AndroidManifestIntentFilter intent-filter marcas .

Há três características de <intenção que você pode filtrar: em>action</em>, <em>data</em> e <em>categories</em>. Para cada uma dessas características, você pode fornecer vários valores de correspondência possíveis (via #addAction, #addDataType, #addDataScheme, , #addDataAuthority#addDataSchemeSpecificPart, e #addDataPath#addCategory, respectivamente). Para ações, se nenhuma característica de dados for especificada, o filtro corresponderá apenas às intenções que não contêm dados.

A característica de dados é dividida em três atributos: tipo, esquema, autoridade e caminho. Qualquer um que seja especificado deve corresponder ao conteúdo da Intenção. Se você especificar um esquema, mas nenhum tipo, somente Intent que não tenha um tipo (como mailto:) corresponderá; um conteúdo: o URI nunca corresponderá porque eles sempre têm um tipo MIME fornecido pelo provedor de conteúdo. Especificar um tipo sem esquema tem um significado especial: ele corresponderá a uma Intenção sem campo de URI ou a uma Intenção com um conteúdo: ou arquivo: URI. Se você não especificar nenhum dos dois, somente uma Intenção sem dados ou tipo corresponderá. Para especificar uma autoridade, você também deve especificar um ou mais esquemas aos quais ela está associada. Para especificar um caminho, você também deve especificar uma ou mais autoridades e um ou mais esquemas aos quais ele está associado.

<div class="referência especial"><h3>Developer Guides</h3>

Para obter informações sobre como criar e resolver intenções, leia o Guia do desenvolvedor de Filtros de Intenção e Intent .

</Div>

<h3>Regras de Filtro</h3>

Uma correspondência é baseada nas seguintes regras. Observe que, para que um IntentFilter corresponda a uma Intent, três condições devem ser mantidas: a ação forte/forte> e <a <categoria< forte>/forte> devem corresponder e os dados (o tipo< de dados forte>/forte> e <o esquema de dados forte>+autoridade+caminho</forte>, se especificado) devem corresponder (consulte #match(ContentResolver, Intent, boolean, String) para <obter mais detalhes sobre como os campos de dados correspondem).><

<strong>Action</strong> corresponde se qualquer um dos valores fornecidos corresponder à ação Intent, se o filtro não especificar ações, ele só corresponderá a Intenções que não contenham uma ação.

<tipo de dados< forte>/forte> corresponde se qualquer um dos valores fornecidos corresponder ao tipo de intenção. O tipo de intenção é determinado chamando Intent#resolveType. Um curinga pode ser usado para o subtipo MIME, tanto no Intent quanto no IntentFilter, de modo que o tipo "audio/*" corresponda a "audio/mpeg", "audio/aiff", "audio/*", etc. <em>Note que a correspondência de tipo MIME aqui é <b>sensível a maiúsculas e minúsculas</b>, ao contrário dos tipos MIME RFC formais!</em> Portanto, você deve sempre usar letras minúsculas para seus tipos MIME.

<forte>Esquema de dados</forte> corresponde se qualquer um dos valores fornecidos corresponder ao esquema de dados de intenção. O esquema de intenção é determinado chamando Intent#getData e android.net.Uri#getScheme nesse URI. <em>Note que a correspondência de esquema aqui é <b>sensível a maiúsculas e minúsculas</b>, ao contrário dos esquemas RFC formais!</em> Portanto, você deve sempre usar letras minúsculas para seus esquemas.

<forte>Data Scheme Specific Part</strong> corresponde se qualquer um dos valores fornecidos corresponder à parte <específica do esquema de dados da Intenção em>e</em> um dos esquemas de dados no filtro correspondeu à Intent, <em>ou</em> nenhuma parte específica do esquema foi fornecida no filtro. A parte específica do esquema de intenção é determinada chamando Intent#getData e android.net.Uri#getSchemeSpecificPart nesse URI. <em>Observe que a correspondência de peças específicas do esquema é <b>sensível a maiúsculas e minúsculas</b>.</eme>

<Autoridade de Dados forte>/forte> corresponde se qualquer um dos valores fornecidos corresponder à autoridade de dados da Intenção <em>e</em> um dos esquemas de dados no filtro correspondeu à Intenção, <em>ou</em> nenhuma autoridade foi fornecida no< filtro. A autoridade de intenção é determinada chamando Intent#getData e android.net.Uri#getAuthority sobre esse URI. <em>Observe que a correspondência de autoridade aqui é <b>sensível a maiúsculas e minúsculas</b>, ao contrário dos nomes formais de host RFC!</em> Portanto, você deve sempre usar letras minúsculas para sua autoridade.

<strong>Data Path</strong> corresponde se qualquer um dos valores fornecidos corresponder ao caminho <de dados da Intenção em>e</em> um esquema e autoridade no filtro correspondeu com a Intenção, <em>ou</em> nenhum caminho foi fornecido no filtro. A autoridade de intenção é determinada chamando Intent#getData e android.net.Uri#getPath sobre esse URI.

<forte>Categorias</forte> correspondência se <em>todas</em> das categorias nas categorias de Intenção de correspondência fornecidas no filtro. Categorias extras no filtro que não estão na Intenção não farão com que a correspondência falhe. Observe que, ao contrário da ação, um IntentFilter sem categorias corresponderá apenas a uma Intenção que não tenha nenhuma categoria.

Documentação Java para android.content.IntentFilter.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Construtores

IntentFilter()

Novo IntentFilter vazio.

IntentFilter(IntentFilter)

Novo IntentFilter que contém uma cópia de um filtro existente.

IntentFilter(IntPtr, JniHandleOwnership)

Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução.

IntentFilter(String)

Novo IntentFilter que corresponde a uma única ação sem dados.

IntentFilter(String, String)

Novo IntentFilter que corresponde a uma única ação e tipo de dados.

Campos

SystemHighPriority
Obsoleto.

O valor do filtro #setPriority no qual os receptores de alta prioridade do sistema são colocados, ou seja, receptores que devem ser executados antes do código do aplicativo.

SystemLowPriority
Obsoleto.

O valor do filtro #setPriority no qual os receptores de baixa prioridade do sistema são colocados, ou seja, receptores que devem ser executados após o código da aplicação.

Propriedades

Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
Creator

Descrição estruturada dos valores de intenção a serem correspondidos.

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
JniIdentityHashCode

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
JniPeerMembers

Descrição estruturada dos valores de intenção a serem correspondidos.

PeerReference

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
Priority

Retorne a prioridade desse filtro. -ou- Modificar a prioridade deste filtro.

ThresholdClass

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

ThresholdType

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

Métodos

ActionsIterator()

Retornar um iterador sobre as ações do filtro.

AddAction(String)

Adicione uma nova ação de Intenção para corresponder.

AddCategory(String)

Adicione uma nova categoria de Intenção para corresponder.

AddDataAuthority(String, String)

Adicione uma nova autoridade de dados de intenção para corresponder.

AddDataPath(String, Pattern)

Adicione um novo caminho de dados de intenção para corresponder.

AddDataScheme(String)

Adicione um novo esquema de dados de intenção para corresponder.

AddDataSchemeSpecificPart(String, Pattern)

Adicione uma nova "parte específica do esquema" de dados de intenção para corresponder.

AddDataType(String)

Adicione um novo tipo de dados de Intenção para corresponder.

AsPredicate()

Retornar um Predicate que testa se esse filtro corresponde à intenção</var> de var>dado<.

AsPredicateWithTypeResolution(ContentResolver)

Retornar um Predicate que testa se esse filtro corresponde à intenção</var> de var>dado<.

AuthoritiesIterator()

Retornar um iterador sobre as autoridades de dados do filtro.

CategoriesIterator()

Retornar um iterador sobre as categorias do filtro.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
CountActions()

Retornar o número de ações no filtro.

CountCategories()

Retornar o número de categorias no filtro.

CountDataAuthorities()

Retornar o número de autoridades de dados no filtro.

CountDataPaths()

Retornar o número de caminhos de dados no filtro.

CountDataSchemes()

Retornar o número de esquemas de dados no filtro.

CountDataSchemeSpecificParts()

Retornar o número de partes específicas do esquema de dados no filtro.

CountDataTypes()

Retornar o número de tipos de dados no filtro.

Create(String, String)

Crie uma nova instância IntentFilter com uma ação especificada e um tipo MIME, onde você sabe que o tipo MIME está formatado corretamente.

DescribeContents()

Descreva os tipos de objetos especiais contidos na representação marshalled deste Parcelable.

Dispose()

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
Dispose(Boolean)

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
Dump(IPrinter, String)

Descrição estruturada dos valores de intenção a serem correspondidos.

Equals(Object)

Indica se algum outro objeto é "igual" a este.

(Herdado de Object)
GetAction(Int32)

Retornar uma ação no filtro.

GetCategory(Int32)

Retornar uma categoria no filtro.

GetDataAuthority(Int32)

Retornar uma autoridade de dados no filtro.

GetDataPath(Int32)

Retornar um caminho de dados no filtro.

GetDataScheme(Int32)

Retornar um esquema de dados no filtro.

GetDataSchemeSpecificPart(Int32)

Retornar uma parte específica do esquema de dados no filtro.

GetDataType(Int32)

Retornar um tipo de dados no filtro.

GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
HasAction(String)

A determinada ação está incluída no filtro? Observe que se o filtro não incluir nenhuma ação, false será <retornado sempre<>/em>.

HasCategory(String)

A categoria dada está incluída no filtro?

HasDataAuthority(Uri)

A autoridade de dados fornecida está incluída no filtro? Observe que se o filtro não incluir nenhuma autoridade, false será <retornado<>>.

HasDataPath(String)

O caminho de dados fornecido está incluído no filtro? Observe que se o filtro não incluir nenhum caminho, false será <retornado sempre></em>.

HasDataScheme(String)

O esquema de dados fornecido está incluído no filtro? Observe que se o filtro não incluir nenhum esquema, false será <sempre<> retornado>.

HasDataSchemeSpecificPart(String)

A parte específica do esquema de dados fornecido está incluída no filtro? Observe que se o filtro não incluir nenhuma parte específica do esquema, false será <retornado<>>.

HasDataType(String)

O tipo de dados fornecido está incluído no filtro? Observe que se o filtro não incluir nenhum tipo, false será <retornado sempre<>/em>.

JavaFinalize()

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)
Match(ContentResolver, Intent, Boolean, String)

Teste se esse filtro corresponde à intenção</var> de var>dada<.

Match(String, String, String, Uri, ICollection<String>, String)

Teste se esse filtro corresponde aos dados de intenção fornecidos.

MatchAction(String)

Combine esse filtro com a ação de uma Intenção.

MatchCategories(ICollection<String>)

Combine esse filtro com as categorias de uma Intenção.

MatchData(String, String, Uri)

Combine esse filtro com os dados de uma Intenção (tipo, esquema e caminho).

MatchDataAuthority(Uri)

Combine esse filtro de intenção com os dados de intenção fornecidos.

Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
PathsIterator()

Retorne um iterador sobre os caminhos de dados do filtro.

ReadFromXml(XmlReader)

Descrição estruturada dos valores de intenção a serem correspondidos.

SchemesIterator()

Retornar um iterador sobre os esquemas de dados do filtro.

SchemeSpecificPartsIterator()

Retornar um iterador sobre as partes específicas do esquema de dados do filtro.

SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle.

(Herdado de Object)
ToArray<T>()

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
TypesIterator()

Retornar um iterador sobre os tipos de dados do filtro.

UnregisterFromRuntime()

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Nivele este objeto em um Pacote.

WriteToXml(IXmlSerializer)

Escreva o conteúdo do IntentFilter como um fluxo XML.

Implantações explícitas de interface

IJavaPeerable.Disposed()

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
IJavaPeerable.Finalized()

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Descrição estruturada dos valores de intenção a serem correspondidos.

(Herdado de Object)

Métodos de Extensão

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada em tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

Descrição estruturada dos valores de intenção a serem correspondidos.

GetJniTypeName(IJavaPeerable)

Descrição estruturada dos valores de intenção a serem correspondidos.

Aplica-se a