IntentFilter Класс

Определение

Структурированное описание совпадаемых значений намерений.

[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
Наследование
IntentFilter
Атрибуты
Реализации

Комментарии

Структурированное описание значений намерений для сопоставления. IntentFilter может сопоставляться с действиями, категориями и данными (через его тип, схему и(или) путь) в намерении. Он также включает значение "приоритет", которое используется для упорядочения нескольких соответствующих фильтров.

Объекты IntentFilter часто создаются в XML как часть файла пакета android.R.styleable#AndroidManifest AndroidManifest.xml с использованием android.R.styleable#AndroidManifestIntentFilter intent-filter тегов.

Существует три характеристики намерения, которые можно отфильтровать: <em>action</em>, <em>data</em> и <em>categories</em>. Для каждой из этих характеристик можно указать несколько возможных соответствующих значений (с помощью #addAction, #addDataType, , #addDataScheme, #addDataSchemeSpecificPart#addDataAuthority, #addDataPathи #addCategoryсоответственно). Если для действий не указаны характеристики данных, фильтр будет соответствовать только намерениям, которые не содержат данных.

Сама характеристика данных состоит из трех атрибутов: type, scheme, authority и path. Все указанные значения должны соответствовать содержимому намерения. Если указать схему без типа, будет соответствовать только намерение без типа (например, mailto:); содержимое. Универсальный код ресурса (URI) никогда не будет совпадать, так как у них всегда есть тип MIME, предоставляемый поставщиком содержимого. Указание типа без схемы имеет несколько особый смысл: он будет соответствовать либо намерению без поля URI, либо намерению с содержимым: или файлу: URI. Если вы не укажете ни , то будет соответствовать только намерение без данных или типа. Чтобы указать центр, необходимо также указать одну или несколько схем, с которыми он связан. Чтобы указать путь, необходимо также указать один или несколько центров управления и одну или несколько схем, с которыми он связан.

<div class="special reference"><h3>Developer Guides</h3>

Дополнительные сведения о создании и разрешении намерений см. в руководстве разработчика По намерениям и фильтрам намерений .

</Div>

<Правила< фильтрации h3>/h3>

Соответствие основано на следующих правилах. Обратите внимание, что для соответствия IntentFilter намерению должны выполняться три условия: <строгое>действие</строгое> и>< строгое значение категории</strong> должно соответствовать, а данные (как надежный тип< данных/strong>, так>< и <>надежная схема данных+власть+путь</strong>, если указано) должны соответствовать (см#match(ContentResolver, Intent, boolean, String). дополнительные сведения о сопоставлении полей данных).

<strong>Action</strong> соответствует, если какое-либо из заданных значений соответствует действию Намерение; если фильтр не указывает действий, он будет соответствовать только намерениям, которые не содержат действия.

<strong>Data Type</strong> соответствует, если какое-либо из заданных значений соответствует типу намерения. Тип намерения определяется путем вызова Intent#resolveType. Для подтипа MIME можно использовать подстановочный знак как в Intent, так и в IntentFilter, чтобы тип "audio/*" соответствовал "audio/mpeg", "audio/aiff", "audio/*" и т. д. <Em>Обратите внимание, что здесь сопоставление типов MIME b учитывает <<>регистр/b>, в отличие от формальных типов MIME RFC!</em> Для типов MIME всегда следует использовать строчные буквы.

<strong>Data Scheme< или strong> соответствует, если какое-либо из заданных значений соответствует схеме данных намерения. Схема намерения определяется путем вызова Intent#getData и android.net.Uri#getScheme по такому универсальному коду ресурса (URI). <Em>Обратите внимание, что здесь сопоставление схем b учитывает <<>регистр/b>, в отличие от формальных схем RFC!</em> Поэтому для схем всегда следует использовать строчные буквы.

<strong>Data Scheme Specific Part</strong> соответствует, если какое-либо из заданных значений соответствует конкретной части <схемы данных намерения em>и</em> одна из схем данных в фильтре соответствует намерению, <em>или</em> , в фильтре не было предоставлено ни одной конкретной части схемы. Конкретная часть схемы намерений определяется путем вызова Intent#getData и android.net.Uri#getSchemeSpecificPart по такому URI. <Em>Обратите внимание, что сопоставление частей схемы зависит <от< регистра b>/b>.</Em>

<strong>Data Authority</strong> соответствует, если какое-либо из заданных значений соответствует центру <данных намерения em>и< (em> ) одна из схем данных в фильтре соответствует намерению, <em>или< (em)> в фильтре не предоставлены полномочия. Центр намерения определяется путем вызова Intent#getData и android.net.Uri#getAuthority по такому URI. <Em>Обратите внимание, что при сопоставлении с центром сертификации учитывается <b>регистр</b>, в отличие от формальных имен узлов RFC!</em> Вы всегда должны использовать строчные буквы для ваших полномочий.

<strong>Data Path</strong> соответствует, если какое-либо из заданных значений соответствует пути данных <намерения em>и< /em> схема и центр в фильтре совпадают с намерением, <em>или</em> пути не указаны в фильтре. Центр намерения определяется путем вызова Intent#getData и android.net.Uri#getPath по такому URI.

<strong>Categories</strong> match, если <em>all</em> категорий в намерениях соответствуют категориям, заданным в фильтре. Дополнительные категории в фильтре, которые отсутствуют в намерении, не приводят к сбою сопоставления. Обратите внимание, что в отличие от действия, фильтр IntentFilter без категорий будет соответствовать только намерению, не имеющим никаких категорий.

Документация по Java для android.content.IntentFilter.

Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.

Конструкторы

IntentFilter()

Новый пустой фильтр IntentFilter.

IntentFilter(IntentFilter)

Новый фильтр IntentFilter, содержащий копию существующего фильтра.

IntentFilter(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

IntentFilter(String)

Новый фильтр IntentFilter, соответствующий одному действию без данных.

IntentFilter(String, String)

Новый фильтр IntentFilter, соответствующий одному действию и типу данных.

Поля

SystemHighPriority
Устаревшие..

Значение фильтра #setPriority , в котором размещаются системные приемники с высоким приоритетом, т. е. получатели, которые должны выполняться перед кодом приложения.

SystemLowPriority
Устаревшие..

Значение фильтра #setPriority , по которому размещаются системные низкоприоритетные приемники, то есть получатели, которые должны выполняться после кода приложения.

Свойства

Class

Возвращает класс среды выполнения данного объекта Object.

(Унаследовано от Object)
Creator

Структурированное описание совпадаемых значений намерений.

Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
JniPeerMembers

Структурированное описание совпадаемых значений намерений.

PeerReference

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
Priority

Возвращает приоритет этого фильтра. -или- Измените приоритет этого фильтра.

ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

Методы

ActionsIterator()

Возвращает итератор по действиям фильтра.

AddAction(String)

Добавьте новое действие Намерения для сопоставления.

AddCategory(String)

Добавьте новую категорию Намерений для сопоставления.

AddDataAuthority(String, String)

Добавьте новый центр данных Intent для сопоставления.

AddDataPath(String, Pattern)

Добавьте новый путь к данным намерения для сопоставления.

AddDataScheme(String)

Добавьте новую схему данных intent для сопоставления.

AddDataSchemeSpecificPart(String, Pattern)

Добавьте новую "часть конкретной схемы", с данными о намерении.

AddDataType(String)

Добавьте новый тип данных Intent для сопоставления.

AsPredicate()

Возвращает объект , Predicate который проверяет, соответствует ли этот фильтр заданному <>намерению< или var>.

AsPredicateWithTypeResolution(ContentResolver)

Возвращает объект , Predicate который проверяет, соответствует ли этот фильтр заданному <>намерению< или var>.

AuthoritiesIterator()

Возвращает итератор по центрам данных фильтра.

CategoriesIterator()

Возвращает итератор по категориям фильтра.

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
CountActions()

Возвращает количество действий в фильтре.

CountCategories()

Возвращает количество категорий в фильтре.

CountDataAuthorities()

Возвращает количество центров данных в фильтре.

CountDataPaths()

Возвращает количество путей к данным в фильтре.

CountDataSchemes()

Возвращает количество схем данных в фильтре.

CountDataSchemeSpecificParts()

Возвращает количество определенных частей схемы данных в фильтре.

CountDataTypes()

Возвращает количество типов данных в фильтре.

Create(String, String)

Создайте экземпляр IntentFilter с указанным действием и типом MIME, где известно, что тип MIME имеет правильный формат.

DescribeContents()

Описывать типы специальных объектов, содержащихся в маршалируемом представлении этого объекта Parcelable.

Dispose()

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
Dispose(Boolean)

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
Dump(IPrinter, String)

Структурированное описание совпадаемых значений намерений.

Equals(Object)

Указывает, равен ли какой-то другой объект этому объекту.

(Унаследовано от Object)
GetAction(Int32)

Возвращает действие в фильтре.

GetCategory(Int32)

Возвращает категорию в фильтре.

GetDataAuthority(Int32)

Возвращает центр данных в фильтре.

GetDataPath(Int32)

Возвращает путь к данным в фильтре.

GetDataScheme(Int32)

Возвращает схему данных в фильтре.

GetDataSchemeSpecificPart(Int32)

Возвращает определенную часть схемы данных в фильтре.

GetDataType(Int32)

Возвращает тип данных в фильтре.

GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
HasAction(String)

Включается ли данное действие в фильтр? Обратите внимание, что если фильтр не содержит никаких действий, значение false всегда будет <><возвращать em/em.>

HasCategory(String)

Включена ли данная категория в фильтр?

HasDataAuthority(Uri)

Включен ли данный центр данных в фильтр? Обратите внимание, что если фильтр не содержит ни одного центра, значение false всегда <><будет возвращать em/em.>

HasDataPath(String)

Включен ли указанный путь к данным в фильтр? Обратите внимание, что если фильтр не содержит пути, значение false всегда будет <><возвращать em/em>.

HasDataScheme(String)

Включена ли указанная схема данных в фильтр? Обратите внимание, что если фильтр не содержит ни одной схемы, значение false всегда <><будет возвращать em/em.>

HasDataSchemeSpecificPart(String)

Включена ли определенная часть схемы данных в фильтр? Обратите внимание, что если фильтр не содержит части, относящиеся к схеме, значение false всегда <><будет возвращать em/em.>

HasDataType(String)

Включен ли данный тип данных в фильтр? Обратите внимание, что если фильтр не содержит ни одного типа, значение false всегда будет <><возвращать em/em.>

JavaFinalize()

Вызывается сборщиком мусора для объекта , когда сборка мусора определяет, что больше нет ссылок на объект .

(Унаследовано от Object)
Match(ContentResolver, Intent, Boolean, String)

Проверьте, соответствует ли этот фильтр заданному <>намерению< var или var>.

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

Проверьте, соответствует ли этот фильтр данным намерения.

MatchAction(String)

Совпадет этот фильтр с действием намерения.

MatchCategories(ICollection<String>)

Совпадет этот фильтр с категориями намерения.

MatchData(String, String, Uri)

Совпадет этот фильтр с данными намерения (типом, схемой и путем).

MatchDataAuthority(Uri)

Совпадет этот фильтр намерений с заданными данными намерения.

Notify()

Пробуждение одного потока, ожидающего на мониторе этого объекта.

(Унаследовано от Object)
NotifyAll()

Активирует все потоки, ожидающие на мониторе этого объекта.

(Унаследовано от Object)
PathsIterator()

Возвращает итератор по путям данных фильтра.

ReadFromXml(XmlReader)

Структурированное описание совпадаемых значений намерений.

SchemesIterator()

Возвращает итератор по схемам данных фильтра.

SchemeSpecificPartsIterator()

Возвращает итератор по конкретным частям схемы данных фильтра.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
ToArray<T>()

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
TypesIterator()

Возвращает итератор по типам данных фильтра.

UnregisterFromRuntime()

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
Wait()

Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления/><em> или <прерывания></em>.

(Унаследовано от Object)
Wait(Int64)

Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления</>em>, <>прерывания< или> em, либо до истечения определенного количества реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Заставляет текущий поток ждать, пока он не будет пробужден, как правило, из-за <уведомления</>em>, <>прерывания< или> em, либо до истечения определенного количества реального времени.

(Унаследовано от Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Сведите этот объект в плоскую структуру в объект Parcel.

WriteToXml(IXmlSerializer)

Запишите содержимое IntentFilter в виде XML-потока.

Явные реализации интерфейса

IJavaPeerable.Disposed()

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
IJavaPeerable.Finalized()

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Структурированное описание совпадаемых значений намерений.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверенное средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Структурированное описание совпадаемых значений намерений.

GetJniTypeName(IJavaPeerable)

Структурированное описание совпадаемых значений намерений.

Применяется к