NdefRecord Klasse

Definition

Stellt einen unveränderlichen NDEF-Eintrag dar.

[Android.Runtime.Register("android/nfc/NdefRecord", DoNotGenerateAcw=true)]
public sealed class NdefRecord : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/nfc/NdefRecord", DoNotGenerateAcw=true)>]
type NdefRecord = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Vererbung
NdefRecord
Attribute
Implementiert

Hinweise

Stellt einen unveränderlichen NDEF-Eintrag dar.

NDEF (NFC Data Exchange Format) ist ein binäres Format mit geringem Gewicht, das zum Kapseln typierter Daten verwendet wird. Es wird vom NFC-Forum für die Übertragung und Speicherung mit NFC angegeben, aber es ist transportagnostisch.

NDEF definiert Nachrichten und Datensätze. Ein NDEF-Eintrag enthält typierte Daten, z. B. MIME-Typmedien, einen URI oder eine benutzerdefinierte Anwendungsnutzlast. Eine NDEF-Nachricht ist ein Container für einen oder mehrere NDEF-Einträge.

Diese Klasse stellt logische (vollständige) NDEF-Datensätze dar und kann nicht zum Darstellen von blockierten (teilweisen) NDEF-Datensätzen verwendet werden. Kann jedoch NdefMessage#NdefMessage(byte[]) verwendet werden, um eine Nachricht zu analysieren, die geblockte Datensätze enthält, und gibt eine Nachricht mit nicht unterteilten (vollständigen) Datensätzen zurück.

Ein logischer NDEF-Eintrag enthält immer ein 3-Bit-TNF (Type Name Field), das eine allgemeine Eingabe für den Rest des Datensatzes bereitstellt. Die verbleibenden Felder sind variable Länge und nicht immer vorhanden: <ul><li><em>type</em>: detaillierte Typisierung für die Nutzlast</li li><><em>id</em>: Bezeichner-Metadaten, nicht häufig verwendet</li li><><em>payload</em>: die tatsächliche Nutzlast</li></ul>

Hilfsprogramme wie NdefRecord#createUri, NdefRecord#createMime und NdefRecord#createExternal sind enthalten, um gut formatierte NDEF-Datensätze mit ordnungsgemäß festgelegten Tnf-, Typ-, ID- und Nutzlastfeldern zu erstellen, verwenden Sie diese Hilfsprogramme, wenn möglich.

Verwenden Sie den Konstruktor #NdefRecord(short, byte[], byte[], byte[]) , wenn Sie wissen, was Sie tun und welche Felder einzeln festgelegt werden sollen. Es wird nur eine grundlegende Überprüfung mit diesem Konstruktor durchgeführt, sodass es möglich ist, Datensätze zu erstellen, die die strengen NFC-Forum-Spezifikationen nicht bestätigen.

Die binäre Darstellung eines NDEF-Eintrags enthält zusätzliche Flags, um den Speicherort mit einer NDEF-Nachricht anzugeben, Unterstützung für die Blöcke von NDEF-Datensätzen und zum Packen optionaler Felder bereitzustellen. Diese Klasse macht diese Details nicht verfügbar. Um einen NDEF-Eintrag als Binärdatei zu schreiben, müssen Sie ihn zuerst in einen NdefMessage, dann aufrufen NdefMessage#toByteArray().

NdefMessage und NdefRecord Implementierungen sind immer verfügbar, auch auf Android-Geräten ohne NFC-Hardware.

NdefRecords sollen unveränderlich (und threadsicher) sein, sie können jedoch änderbare Felder enthalten. Achten Sie daher darauf, veränderbare Felder, die an Konstruktoren übergeben werden, oder veränderbare Felder zu ändern, die von Getter-Methoden abgerufen wurden, es sei denn, diese Änderung ist explizit als sicher gekennzeichnet.

Java Dokumentation für android.nfc.NdefRecord.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

Name Beschreibung
NdefRecord(Byte[])
Veraltet.

Erstellen Sie einen NDEF-Eintrag aus unformatierten Bytes.

NdefRecord(Int16, Byte[], Byte[], Byte[])

Erstellen Sie einen NDEF-Eintrag aus seinen Komponentenfeldern.

Felder

Name Beschreibung
TnfAbsoluteUri

Gibt an, dass das Typfeld ein durch RFC 3986 definiertes absolutes URI-BNF-Konstrukt enthält.

TnfEmpty

Gibt an, dass der Datensatz leer ist.

TnfExternalType

Gibt an, dass das Typfeld einen externen Typnamen enthält.

TnfMimeMedia

Gibt an, dass das Typfeld ein durch RFC 2046 definiertes BNF-Konstrukt vom Medientyp enthält.

TnfUnchanged

Gibt an, dass es sich bei der Nutzlast um einen zwischen- oder endgültigen Teil eines NDEF-Datensatzes handelt.

TnfUnknown

Gibt an, dass der Nutzlasttyp unbekannt ist.

TnfWellKnown

Gibt an, dass das Typfeld einen bekannten RTD-Typnamen enthält.

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Creator
Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
JniIdentityHashCode

Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist.

(Geerbt von Object)
JniPeerMembers

Stellt einen unveränderlichen NDEF-Eintrag dar.

PeerReference

Ruft den JNI-Objektverweis für diesen Java Peer ab.

(Geerbt von Object)
RtdAlternativeCarrier

RTD Alternativer Trägertyp.

RtdHandoverCarrier

RTD Handover Carrier Typ.

RtdHandoverRequest

RTD-Übergabeanforderungstyp.

RtdHandoverSelect

RTD Handover Select-Typ.

RtdSmartPoster

RTD-Smartpostertyp.

RtdText

RTD-Texttyp.

RtdUri

RTD-URI-Typ.

ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)
ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)
Tnf

Gibt den 3-Bit-TNF zurück.

Methoden

Name Beschreibung
Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
CreateApplicationRecord(String)

Erstellen eines neuen Android-Anwendungseintrags (AAR).

CreateExternal(String, String, Byte[])

Erstellen Sie einen neuen NDEF-Eintrag, der externe (anwendungsspezifische) Daten enthält.

CreateMime(String, Byte[])

Erstellen Sie einen neuen NDEF-Eintrag, der MIME-Daten enthält.

CreateTextRecord(String, String)

Erstellen Sie einen neuen NDEF-Eintrag mit UTF-8-Textdaten.

CreateUri(String)

Erstellen Sie einen neuen NDEF-Eintrag, der einen URI enthält.

CreateUri(Uri)

Erstellen Sie einen neuen NDEF-Eintrag, der einen URI enthält.

DescribeContents()

Beschreiben Sie die Arten von speziellen Objekten, die in der Marshalldarstellung dieser Paketable enthalten sind.

Dispose()

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Dispose(Boolean)

Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetId()

Gibt die variable Längen-ID zurück.

GetPayload()

Gibt die Nutzlast der variablen Länge zurück.

GetTypeInfo()

Gibt das Feld "Typ" der Variablenlänge zurück.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ToArray<T>()

Erstellt ein verwaltetes Array aus diesem Java Arraywrapper.

(Geerbt von Object)
ToByteArray()
Veraltet.

Gibt diesen NDEF-Eintrag als Bytearray zurück.

ToMimeType()

Ordnen Sie diesen Eintrag einem MIME-Typ zu, oder geben Sie NULL zurück, wenn er nicht zugeordnet werden kann.

ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
ToUri()

Ordnen Sie diesen Datensatz einem URI zu, oder geben Sie NULL zurück, wenn er nicht zugeordnet werden kann.

UnregisterFromRuntime()

Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Flachen Sie dieses Objekt in ein Paket.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IJavaPeerable.Disposed()

Benachrichtigt die Interoplaufzeit, dass dieser verwaltete Peer verworfen wurde.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Gibt diesen Java Peer frei, es sei denn, er wird von einem anderen verwalteten Verweis beibehalten.

(Geerbt von Object)
IJavaPeerable.Finalized()

Benachrichtigt die Interoplaufzeit, dass dieser verwaltete Peer abgeschlossen wurde.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Ruft den Zustand ab, der die Beziehung zwischen diesem verwalteten Peer und seinem JNI-Verweis beschreibt.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Legt den Interop-Identitätshashcode für diesen Java Peer fest.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Legt den verwalteten und JNI-Peerstatus für diesen Java Peer fest.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Legt den JNI-Objektverweis fest, der von diesem verwalteten Peer verwendet wird.

(Geerbt von Object)

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Stellt einen unveränderlichen NDEF-Eintrag dar.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe selfzu TResult erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: