Tag Класс

Определение

Представляет обнаруженный nfc-тег.

[Android.Runtime.Register("android/nfc/Tag", DoNotGenerateAcw=true)]
public sealed class Tag : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/nfc/Tag", DoNotGenerateAcw=true)>]
type Tag = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Наследование
Атрибуты
Реализации

Комментарии

Представляет обнаруженный nfc-тег.

Tag — это неизменяемый объект, представляющий состояние nfc-тега на момент обнаружения. Его можно использовать в качестве дескриптора классов TagTechnology для выполнения расширенных операций или напрямую запрашивать его идентификатор через #getId и набор технологий, который он содержит через #getTechList. Массивы, передаваемые и возвращаемые этим классом, не< клонируются>< em/em>, поэтому не изменяйте их.

Новый объект тега создается при каждом обнаружении тега (входит в диапазон), даже если это один и тот же физический тег. Если тег удаляется, а затем возвращается в диапазон, для создания можно успешно использовать только последний объект тега TagTechnology.

<h3>Tag Dispatch</h3> При обнаружении тега Tag объект создается и передается одному действию через дополнительный NfcAdapter#EXTRA_TAG объект в с android.content.Intent помощью Context#startActivity. Для выбора наиболее подходящего действия для обработки тега используется четырехэтапная диспетчеризация. ОС Android выполняет каждый этап по порядку и завершает отправку сразу после обнаружения одного соответствующего действия. Если на одном этапе найдено несколько соответствующих действий, отображается диалоговое окно выбора действий Android, позволяющее пользователю выбрать действие для получения тега.

Механизм диспетчеризации тегов был разработан таким образом, чтобы обеспечить высокую вероятность отправки тега правильному действию без отображения пользователю диалогового окна выбора действий. Это важно для nfc-взаимодействий, так как они очень временные. Если пользователю придется переместить устройство Android, чтобы выбрать приложение, подключение, скорее всего, будет разорвано.

<h4>1. Диспетчеризация< действий переднего плана/h4> . Вызываемой NfcAdapter#enableForegroundDispatch NfcAdapter.enableForegroundDispatch() операции переднего плана присваивается приоритет. Сведения о его использовании см. в документации.NfcAdapter#enableForegroundDispatch NfcAdapter.enableForegroundDispatch() <h4>2. Диспетчеризация< данных NDEF/h4> Если тег содержит данные NDEF, система проверяет первый NdefRecord в первом NdefMessage. Если запись является URI, данные Context#startActivity SmartPoster или MIME вызываются с NfcAdapter#ACTION_NDEF_DISCOVEREDпомощью . Для записей URI и SmartPoster URI помещается в поле данных намерения. Для записей MIME тип MIME помещается в поле типа намерения. Это позволяет регистрировать действия только в том случае, если данные, которые они знают, как обрабатывать, присутствуют в теге. Это предпочтительный метод обработки данных в теге, так как данные NDEF могут храниться во многих типах тегов и не зависят от конкретной технологии тегов. Дополнительные сведения см NfcAdapter#ACTION_NDEF_DISCOVERED . в статье. Если тег не содержит данных NDEF или действие не зарегистрировано для NfcAdapter#ACTION_NDEF_DISCOVERED с соответствующим URI данных или типом MIME, диспетчеризация переходит на этап 3. <h4>3. Tag Technology dispatch</h4>Context#startActivity вызывается с NfcAdapter#ACTION_TECH_DISCOVERED для отправки тега в действие, которое может обрабатывать технологии, имеющиеся в теге. Технологии определяются как подклассы TagTechnology, см. пакет android.nfc.tech. ОС Android ищет действие, которое может обрабатывать одну или несколько технологий в теге . Дополнительные сведения см NfcAdapter#ACTION_TECH_DISCOVERED . в статье. <h4>4. Откатная отправка</h4> Если действие не было сопоставлено, вызывается Context#startActivity с NfcAdapter#ACTION_TAG_DISCOVERED. Это предназначено как механизм отката. См. раздел NfcAdapter#ACTION_TAG_DISCOVERED.

<h3>NFC Tag Background</h3> . Тег NFC — это пассивное устройство NFC, которое работает на поле NFC этого устройства Android, пока оно находится в диапазоне. Теги могут быть в различных формах, таких как наклейки, карточки, брелоки или даже встроенные в более сложное устройство.

Теги могут иметь широкий спектр возможностей. Простые теги предлагают просто семантику чтения и записи и содержат несколько однократных программируемых областей, доступных только для чтения. Более сложные теги предлагают математические операции, управление доступом и проверку подлинности для каждого сектора. Самые сложные теги содержат операционные среды, позволяющие выполнять сложные взаимодействия с кодом, выполняемым в теге . Используйте TagTechnology классы для доступа к широкому спектру возможностей, доступных в nfc-тегах.

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

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

Свойства

Class

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

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

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

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

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

PeerReference

Представляет обнаруженный nfc-тег.

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

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

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

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

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

Методы

Clone()

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

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

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

Dispose()

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

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

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

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

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

Получите идентификатор тега (если он имеется).

GetTechList()

Получите технологии, доступные в этом теге, в виде полных имен классов.

JavaFinalize()

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

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

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

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

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

(Унаследовано от Object)
SetHandle(IntPtr, JniHandleOwnership)

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

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

Представляет обнаруженный nfc-тег.

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

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

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

Представляет обнаруженный nfc-тег.

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

Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.><

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

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

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

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

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

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

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

IJavaPeerable.Disposed()

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

Представляет обнаруженный nfc-тег.

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

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

Представляет обнаруженный nfc-тег.

GetJniTypeName(IJavaPeerable)

Представляет обнаруженный nfc-тег.

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