Depois de instalar o Android 2.3.4 no Nexus S, os aplicativos NFC não iniciam mais
Pergunta
Depois de instalar o Android 2.3.4 no meu Nexus S, os aplicativos NFC não iniciam mais.
Eu tentei com as três intenções (NDEF_DISCOVERED,TECH_DISCOVERED,TAG_DISCOVERED) descritas na documentação do Google, mas qualquer uma delas resolve o problema, Nexux S continua abrindo aplicativos padrão do Google e ignora meu aplicativo.
Eu tinha isso no manifesto
<intent-filter>
<action android:name="android.nfc.action.TAG_DISCOVERED"/>
</intent-filter>
e se não me engano parece ter suporte na notícia 2.3.3, por que o Nexus S ignora isso?
Você poderia me ajudar por favor.
Atenciosamente, Hugo.
Solução
Você precisa adicionar isto aos seus filtros de intenção:
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED"/>
</intent-filter>
Quando uma tag é verificada, o Android deve mostrar um pop-up perguntando qual aplicativo deve lidar com ela.
Atualizar
Com base nas informações adicionais do seu comentário, o problema é que sua tag contém informações reconhecidas pelo Android.Neste caso, isso é um URL.Como o Android pode encontrar um aplicativo (o aplicativo NFC padrão) que pode lidar com URLs, esse aplicativo terá prioridade e será chamado em vez de um aplicativo que simplesmente lida com a descoberta de tags.A descoberta de tags só será enviada se nenhum outro filtro de intent corresponder à tag.Para citar os documentos:
android.nfc.action.TAG_DISCOVERED:Essa intenção começa se nenhuma atividade lidar com as intenções NDEF_Descoberted e Tech_Descoberted ou se a tag que é digitalizada for desconhecida.
Portanto, você também deve declarar sua tag para lidar com mensagens nas tags. Você também precisa especificar exatamente o tipo de dados que está almejando (neste caso, URLs), caso contrário, o aplicativo Google Android ainda terá precedência para URLs. Você pode ler mais informações sobre o Página NFC do Android
Outras dicas
Você também deve adicionar dados no filtro de intenções.Consulte http://developer.android.com/guide/topics/nfc/nfc.html#tech-disc
e procure em ACTION_NDEF_DISCOVERED em Filtragem para intenções NFC.