A verificação de tags NFC aciona apenas meu aplicativo para iniciar
Eu tenho um aplicativo que verifica tags NFC, coleta os dados da tag e envia esses dados para o servidor. Os dados na tag estão no seguinte formato:
1,3,30012,somebodys name
Essas tags são colocadas nas casas dos clientes para os cuidadores digitalizarem. Cada varredura os registra em uma chamada.
Isso tem funcionado bem até agora. O problema que tenho agora é que os prestadores de cuidados devem usar outro aplicativo ao lado do aplicativo, que verifica uma etiqueta NFC diferente, com dados diferentes e a envia para um servidor diferente. Este aplicativo está instalado no telefone do mesmo cuidador.
Este outro aplicativo verificará as tags NFC que podem conter dados no seguinte formato:
abc|123??
A questão é como posso garantir que, quando o cuidador digitalizar nossa tag, APENAS nosso aplicativo for lançado?
Existe uma maneira no manifesto de especificar isso nos filtros de intenção do meu aplicativo?
É isso que tenho no manifesto da minha Atividade. Entendo que, se um Intent for iniciado e houver 2 aplicativos que possam processar uma tag NFC, uma lista será apresentada ao usuário. Os documentos do Android desencorajam isso.
Desde já, obrigado.
[Editar] Uma coisa que notei: se o telefone estiver na tela inicial e digitalizar uma etiqueta, meu aplicativo será iniciado. Isso é bom se o cuidador digitalizar a etiqueta correta.
<activity android:name=".NfcscannerActivity"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="com.carefreegroup.rr3.QRCODE_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.nfc.action.TECH_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.nfc.action.TECH_DISCOVERED"
android:resource="@xml/nfc_tech_filter" />
</activity>