J'ai créé un NFC en lecture/partie d'écriture de mon code d'application, où:Les données manquantes lors de la lecture URI de l'étiquette NFC
READ est responsable du traitement des données et le déclenchement d'un navigateur Web:
ndef.connect()
val ndefMessage = ndef.ndefMessage
if (ndefMessage.records != null && ndefMessage.records.isNotEmpty()) {
message = String(it.records[0].payload)
}
ndef.close()
ECRITURE écrit une URL sur le tag NFC:
ndef.connect()
val mimeRecord = NdefRecord.createUri(url)
ndef.writeNdefMessage(NdefMessage(mimeRecord))
ndef.close()
Pour une raison mystérieuse quand j'écris l'URL « http://www.google.com », mon ma message
variable (après avoir lu une étiquette avec cette URL) contient uniquement "google.com". Je n'ai aucune idée pourquoi le reste de l'URL ("http://www.") Est supprimé/ommited. Pouvez-vous me dire ce qui se passe? Où est mon erreur?
Pour clarifier les choses, vous écrivez la variable 'url' à la balise, qui a la valeur 'http: // www.google.com', et quand vous l'avez lu, le retour est juste' google.com'? Avez-vous essayé une autre URL? Il peut être utile de voir où l'URL est créée. – WoogieNoogie
Oui pour le moment, cela fonctionne exactement comme vous l'avez écrit. Oui j'ai essayé différentes URLs - aucune différence tho: CI a lu l'URL du widget 'EditText' et l'a passé à mon 'TagManager' – JakubW
Je ne peux pas le mettre comme une réponse, car c'est plus une théorie, mais des informations NFC doit être court et concis. Il est très possible que la bibliothèque Ndef raccourcisse l'URL à dessein, si elle commence par 'http: // www', car c'est un peu l'URI" par défaut ". – WoogieNoogie