O que é o modo leitor gravador?
O modo leitor gravador é o celular agindo como o lado alimentado: ele gera o campo, acorda uma tag passiva e troca dados com ela. Ele cobre ler, gravar, formatar e bloquear. E é também o único modo em que um aplicativo comum tem liberdade genuína para fazer o que quiser.
O que o celular faz
Tudo, do ponto de vista da energia. Ele produz o campo, fornece à tag a energia de que ela precisa para funcionar, envia cada comando e interpreta cada resposta. A tag não contribui com nada além de uma resposta.
Dentro disso, as operações disponíveis são ler conteúdo, gravar conteúdo novo, formatar uma tag virgem, definir uma senha onde o chip a suporta, e bloquear a memória permanentemente.
O único modo que você controla
A emulação de cartão é barrada pela plataforma e, no caso do pagamento, pelas bandeiras de cartão. O ponto a ponto já não existe na prática. O modo leitor gravador é o que sobra, e ele é genuinamente aberto.
Um aplicativo comum pode ler qualquer tag com que consiga falar, gravar conteúdo padrão e inspecionar detalhes técnicos. Ninguém tem de aprovar o que você põe na sua própria tag. Para quem está construindo algo com NFC em vez de apenas usá-lo, esse modo é o campo de jogo inteiro.
Onde as plataformas diferem
O Android expõe as tecnologias diretamente, e a documentação de referência dele as lista uma a uma, das camadas de rádio de baixo nível até as operações NDEF. Um aplicativo pode descer tão fundo quanto o hardware permitir.
O iOS é mais restrito. O Core NFC oferece leitura e gravação de tags dentro das regras da Apple, e o aplicativo em geral precisa estar rodando e em primeiro plano para que uma sessão comece. Na prática, no iOS o usuário tem de abrir o aplicativo primeiro, o que muda o modo como uma interação pode ser desenhada.
A diferença importa na hora de projetar e não na hora de ler. Um fluxo que pressupõe que a tag vai ser tocada sem nenhum aplicativo aberto vai se comportar de um jeito muito diferente nas duas plataformas.
O que ele ainda não consegue fazer
Ler uma tag que usa um protocolo proprietário que o controlador não implementa. Alcançar dados protegidos por chaves que você não tem. Mudar um identificador programado na fábrica numa tag comum. Regravar uma tag que foi bloqueada.
Nenhuma dessas é uma limitação de software que se possa contornar, e a última vale ser repetida porque pega as pessoas de forma permanente: bloquear é uma operação sem volta, e o modo leitor gravador é a ferramenta que a executa.
Perguntas frequentes
Eu preciso de um aplicativo especial para usar esse modo?
Para leitura simples, as duas plataformas tratam o conteúdo comum sem aplicativo nenhum. Gravar, formatar e bloquear precisam de uma ferramenta, já que nenhum dos dois sistemas operacionais expõe essas operações na interface própria.
Dois aplicativos podem ler a mesma tag ao mesmo tempo?
Não. Uma troca, um aplicativo. O sistema operacional decide qual deles recebe a tag, com base no conteúdo e em quais aplicativos registraram interesse nele.
Por que o iOS precisa do aplicativo aberto e o Android não?
É uma decisão de plataforma sobre quando um aplicativo pode iniciar uma sessão NFC. A leitura em segundo plano no iPhone trata parte do conteúdo sem aplicativo, mas um aplicativo que queira controlar a troca tem de estar rodando.
Gravar uma tag é mais arriscado que ler uma?
Sim, num sentido específico: uma gravação interrompida no meio pode deixar a tag num estado inconsistente, e o bloqueio não pode ser desfeito. Ler uma tag não consegue danificá-la.