Поделиться через


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
Атрибуты
Реализации

Комментарии

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

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

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

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

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

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

</div>

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

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

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

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

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

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

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

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

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

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

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

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

IntentFilter()

Новое пустое намерениеFilter.

IntentFilter(IntentFilter)

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

IntentFilter(IntPtr, JniHandleOwnership)

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

IntentFilter(String)

New IntentFilter, который соответствует одному действию без данных.

IntentFilter(String, String)

New 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)

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

AddDataPath(String, Pattern)

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

AddDataScheme(String)

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

AddDataSchemeSpecificPart(String, Pattern)

Добавьте новые данные намерения "определенная часть схемы" для сопоставления.

AddDataType(String)

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

AsPredicate()

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

AsPredicateWithTypeResolution(ContentResolver)

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

AuthoritiesIterator()

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

CategoriesIterator()

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

Clone()

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

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

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

CountCategories()

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

CountDataAuthorities()

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

CountDataPaths()

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

CountDataSchemes()

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

CountDataSchemeSpecificParts()

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

CountDataTypes()

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

Create(String, String)

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

DescribeContents()

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

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> будет <><возвращено.

HasCategory(String)

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

HasDataAuthority(Uri)

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

HasDataPath(String)

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

HasDataScheme(String)

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

HasDataSchemeSpecificPart(String)

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

HasDataType(String)

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

JavaFinalize()

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

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

Проверьте, соответствует ли этот фильтр заданному <>намерению< или 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 или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

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

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

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

Неструктурировать этот объект в пакете "Посылка".

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)

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

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