NDEF-Informationen

1、NDEF

Eine NDEF-Nachricht besteht aus einem oder mehreren NEDF-Datensätzen und ist
ein MIME-Mehrzweck-Internet-Mail-Erweiterungstyp (Multipurpose Internet Mail Extensions). Dabei handelt es sich um eine Möglichkeit, eine Datei mit einer bestimmten Erweiterung so festzulegen, dass sie mit einer Anwendung geöffnet werden soll. Wenn auf eine Datei mit dieser Erweiterung zugegriffen wird, verwendet der Browser automatisch die angegebene Anwendung, um sie zu öffnen. Es wird hauptsächlich verwendet, um einige vom Client definierte Dateinamen und einige Methoden zum Öffnen von Mediendateien anzugeben.
Fügen Sie hier eine Bildbeschreibung ein

![Bildbeschreibung hier einfügen](https://img-blog.csdnimg.cn/8bc118a6eb8244c9870df4c98d61e7aa.png
Fügen Sie hier eine Bildbeschreibung einFügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung einFügen Sie hier eine Bildbeschreibung ein
Einführung in RTD

     名词简介:

     RTD: record typedefinition

     NID:namespace indentifier

     NSS:namespace specific string    

     URI:uniform resourceindentifier

     URN:uniform resource name

     MIME: multipurpose internet mailextension

Einführung in den Datensatztyp:

    NFC中well known type设置为TNF为0x01,则其NID为”nfc”,NSS前缀含“wkt”,例如:“urn:nfc:wkt:a”被编码成”a”。 

    若设置TNF为0x04,表示external type时,说明第三方希望能自行分配namespace,则其NID为”nfc”,NSS前缀含“ext”,例如:“urn:nfc:ext:<domain>:<servicename>”被编码成” <domain>:<service name>”。

    协议规定全局变量需以大写字母开头,局部变量使用小写字母或者数据开头。

Einführung in die Codierung

     编码结果中,不应该出现URN NID以及NSS prefix。

    在比较type名称时,两个well know type的名字区分大小写,但是两个external type的名字不区分大小写。例子请参考Spec。

     对于编码,协议还有规定一些error handling部分,简单的说就是忽略错误信息:

    -  出现非法字符(Spec定义以外的字符)时,直接忽略

    -  忽略无法识别的wkt和ext时,直接忽略

Da die Protokolle von NDEF und RTD relativ einfach sind, werde ich nicht zu viel vorstellen. Tatsächlich hat jedes Format für den RTD-Teil seine spezifischen Paketinformationen (z. B. Textformat, Sig-Format und Smart Post usw.), daher werde ich hier nicht näher darauf eingehen. Wenn Sie das entsprechende Protokoll verwenden müssen, wenden Sie sich bitte an uns direkt darauf verweisen.

Fügen Sie ein schematisches Diagramm meines Verständnisses von LLCP SNEP NEDF und RTD hinzu:

±-----------------------------------------+
| ±---------------+ |
| | ±-------------------+ | |
| | | ±------+ | | |
| LLCP | SNEP | DNEF | FTE | | | |
| | | ±------+ | | |
| | ±-------------------+ | |
| ±---------------+ |
±-----------------------------------------+

2. Die Priorität der drei Datenmodi

<intent-filter>

        <action android:name = "android.nfc.action.NDEF_DISCOVERED" />

<data android:mimeType = "text/plain" />

    </intent-filter>
    <intent-filter>              

        <action android:name="android.nfc.action.TECH_DISCOVERED" />

    </intent-filter> 

            

   <meta-data android:name="android.nfc.action.TECH_DISCOVERED"

          android:resource="@xml/filter_nfc" /> 
  <intent-filter>

       <action android:name="android.nfc.action.TAG_DISCOVERED"/>

       <category android:name="android.intent.category.DEFAULT"/>

</intent-filter>

1. Gemäß der Priorität (android.nfc.action.NDEF_DISCOVERED hat die höchste Priorität) wird zunächst ermittelt, ob die Anforderung die Absichtsfilterregeln in Aktivität A erfüllt (da A NDEF_DISCOVERED verwendet), und zunächst wird ermittelt, ob die Anforderung vorhanden ist Verwenden Sie das NDEF_DISCOVERED-Format für Daten (Aktionsname) und beurteilen Sie dann den Typ der NDEF_DISCOVERED-Daten (Aktionstyp), unabhängig davon, ob es sich um Klartext oder Smart Poster handelt, nur dann, wenn er mit den Anforderungen der beiden Bedingungen im Filter übereinstimmt, wird Aktivität A verwendet zur Bearbeitung ausgewählt werden.

2. Wenn Aktivität A nicht erfüllt ist, beurteilen Sie Aktivität B. Wenn NDEF_DISCOVERED damit nicht umgehen kann, beginnen Sie mit der Suche nach TECH_DISCOVERED. Der Absichtsfilter von Aktivität B wählt die Filterung nach TECH_DISCOVERED aus, d. h. die NFC-Spezifikation des angeforderten Tags muss einem oder mehreren der durch TECH_DISCOVERED festgelegten ISO14443-4, ISO14443-3A oder ISO14443-3B entsprechen. Der Filter TECH_DISCOVERED muss eine XML-Datei definieren, um den zu unterstützenden Tech-Modus zu filtern, und die entsprechende Tech-Filter-Datei filter_nfc entsprechend zuordnen. In filter_nfc.xml antwortet die Aktivität nur, wenn sie dem zwischen den ...-Tags definierten NFC-Standard entspricht, andernfalls wird sie vom von der Aktivität festgelegten Absichtsfilter weitergeleitet.

3. Wenn die Anforderungsabsicht die Regeln NDEF_DISCOVERED und TECH_DISCOVERED nicht erfüllt, beginnt die Absicht, die Aktivität zu finden, deren Absichtsfilterregel android.nfc.action.TAG_DISCOVERED ist, also Aktivität C. Die Filterregel von TAG_DISCOVERED ist am wenigsten streng. Solange sie einer der NFC-Spezifikationen entspricht, antwortet sie. Daher ist ihre Priorität in Android am niedrigsten, andernfalls wird TAG_DISCOVERED ausgewählt, um von Anfang an zu antworten, und die Aktivität kann nicht reagieren Tag-Updates abrufen. Einige detaillierte Informationen, wie die NFC-Spezifikation oder der NDEF-Typ, den das Tag erfüllt.
Fügen Sie hier eine Bildbeschreibung ein

Je suppose que tu aimes

Origine blog.csdn.net/weixin_44440669/article/details/119453236
conseillé
Classement