tags - Weird Android device behaviour in reading NFC tech-list -
i trying read nfc tag 2 devices (nexus 5 , samsung s5).
i reading tag through foreground dispatch , using action_tech_discovered intent. on samsung s5, tech-list lists nfca, mifareclassic, , ndef, on nexus 5, lists nfca.
i know nexus 5 doesn't support nxp's mifare classic tags. thus, understand why doesn't list mifareclassic. why not show ndef in tech-list?
when try read tag using action_ndef_discovered intent, samsung s5 reading fine, while nexus 5 doesn't detect it.
that's not weird rather expected behaviour:
as found out yourself, nexus 5 not support mifare classic while samsung s5 does. problem mifare classic uses well-defined anti-collision mechanism iso/iec 14443-3 , can therefore detected on android nfc devices. on top of standardized anti-collision, mifare classic uses proprietary protocol (that differs in framing , uses proprietary encryption algorithm). nxp not provide licenes reader-side of protocol, nxp chipsets implement it. consequence, devices nxp chipsets (like samsung s5, contains pn547 nfc controller) can access data on mifare classic cards. other devices (e.g. broadcom nfc chipsets nexus 5 or samsung nfc chipsets s5 mini) not support mifare classic protocol , therefore cannot access data stored on chips.
as consequence, mifareclassic tag technology not shown on devices, platform not supprt sending mifare classic commands (that's mifareclassic technology object). moreover, being unable toi send memory access commands, means data stored on tag cannot accessed. that's why no ndef technology shown: ndef data abstraction layer on top of nfc tags, hence, no access data means there no means access same data through ndef abstraction layer. hence, not make sense provide ndef technology object not use anyways access data.
Comments
Post a Comment