Was ist das Zustellsystem für Tags unter Android?
Der Teil von Android, der entscheidet, welche Anwendung einen Tag bekommt. Er untersucht das Gelesene und versucht drei Ebenen in fester Reihenfolge, von einer Übereinstimmung mit dem tatsächlichen Inhalt bis hinunter zu einem letzten Ausweg, der nur meldet, dass ein Tag gefunden wurde. Ab Android 16 wird ein Tag mit einer Webadresse stattdessen wie jeder andere Link geöffnet, und ab Android 17 ist der letzte Ausweg abgekündigt.
Drei Ebenen, der Reihe nach
Die Dokumentation von Android beschreibt das System so, dass es einen entdeckten Tag untersucht, die Daten einordnet und eine daran interessierte Anwendung startet.
Die erste Ebene gilt, wenn der Tag NDEF-Inhalt trägt, den das System einem Typ zuordnen kann. In Frage kommen Anwendungen, die sich für diesen Typ eingetragen haben.
Webadressen sind ab Android 16 die Ausnahme. Laut dem NFC-Leitfaden von Android löst ein Tag mit einem http- oder https-Link dann die gewöhnliche Anfrage zum Öffnen eines Links aus, die der Browser oder eine für die Adresse verifizierte Anwendung beantwortet, und ab Android 17 erst, nachdem die Nutzenden auf eine Mitteilung zum Öffnen reagiert haben.
Die zweite gilt, wenn sich der Inhalt so nicht zuordnen lässt. Stattdessen werden die Technologien des Tags herangezogen, in Frage kommen also Anwendungen, die sich für eine Technologie eingetragen haben.
Die dritte ist der Rückfall, gestartet, wenn nichts eine der ersten beiden behandelt hat. Sie trägt den Tag und keine Deutung, und die Dokumentation kündigt sie ab Android 17 ab.
Warum die Reihenfolge zählt
Das Genauere gewinnt. Eine Anwendung, die sich für den genauen Inhalt eingetragen hat, schlägt eine, die sich für die Technologie eingetragen hat, und diese schlägt den allgemeinen Fall.
Ein Tag, der das Falsche öffnet, ist also meist ein Tag, dessen Inhalt auf etwas Genaueres passte, als Sie erwartet haben, und kein unberechenbar handelndes System.
Es erklärt außerdem, warum sich derselbe Tag auf zwei Telefonen anders verhält. Der Tag ist derselbe, und die Menge der installierten Kandidaten ist es nicht.
Und es erklärt die Auswahl: zwei Anwendungen auf derselben Ebene, beide geeignet, und keine Grundlage für das System, eine zu bevorzugen.
Eine Anwendung vom Tag aus benennen
Ein Tag kann einen Datensatz tragen, der eine Android-Anwendung benennt, was eine Vorliebe für diese Anwendung ausdrückt, statt die Wahl offenzulassen.
Die Dokumentation hält fest, dass das vom Zustellsystem für den Vordergrund übergangen werden kann, ein benennender Datensatz ist also ein starker Wink und keine Anweisung.
Er kostet außerdem Bytes und tut auf anderen Plattformen nichts, es lohnt sich also nur dort, ihn hinzuzufügen, wo die Anwendung wirklich der Zweck des Tags ist.
Für ein öffentliches Rollout ist eine Webadresse vorhersehbarer. Sie arbeitet auf jedem Telefon, ob etwas installiert ist oder nicht.
Was ein Rollout daraus mitnehmen sollte
Schreiben Sie Inhalt, dessen Behandlung Sie vorhersagen können, und das heißt in der Praxis eine Webadresse.
Prüfen Sie auf einem Gerät, das Ihrem Publikum ähnelt, und nicht auf Ihrem, denn die Liste der Kandidaten ist es, was sich zwischen ihnen unterscheidet.
Rechnen Sie auf manchen Telefonen mit einer Auswahl und gestalten Sie so, dass sie kein Unglück ist: ein klares Ziel, das Sinn ergibt, welcher Browser sich auch öffnet.
Und verlassen Sie sich nicht darauf, dass sich eine bestimmte Anwendung öffnet, sofern Sie nicht die Telefone beherrschen, denn Sie beherrschen den Tag und nicht das, was auf der anderen Seite installiert ist.
Häufige Fragen
Kann ich erzwingen, dass eine App meinen Tag bekommt?
Nur, wo Sie das Gerät beherrschen. Ein Datensatz, der eine Anwendung benennt, drückt eine Vorliebe aus, und eine Anwendung im Vordergrund kann sie übergehen. Ab Android 16 können die Nutzenden einer Anwendung außerdem den Empfang von Tags ganz verbieten.
Warum erscheint eine Auswahl?
Zwei oder mehr installierte Anwendungen kommen auf derselben Ebene in Frage, das System fragt also, statt zu raten.
Was geschieht bei einem Tag ohne NDEF?
Statt der Ebene des Inhalts gilt die der Technologie, in Frage kommen also Anwendungen, die sich für diese Technologie eingetragen haben.
Arbeitet iOS genauso?
Nein. iOS reagiert auf eine engere Auswahl von Datensatztypen und setzt in den Weg über den Hintergrund einen Bestätigungsschritt, derselbe Tag verhält sich also anders.