2012-02-09 20 views
5

He creado una aplicación que escanea etiquetas con el escáner NFC. En lugar de la aplicación de etiqueta predeterminada, mi aplicación se inicia cuando se lee una tarjeta.Android: nueva etiqueta recopilada: tipo de etiqueta desconocida

Funciona por completo, pero hay algo que es bastante molesto: cuando escaneo una tarjeta muy rápido, mi aplicación parece no responder, pero se abre la aplicación de etiqueta predeterminada (consulte https://i.stack.imgur.com/lGwiM.png). ¿Hay alguna forma de desactivar la aplicación predeterminada o iniciar mi aplicación más rápido?

+0

Qué intentos se están presentando en el Logcat? ¿Puedes pegar el resultado aquí? ¿A qué te refieres al escanearlo muy rápido? ¿Mueves el teléfono rápidamente antes de que tenga la oportunidad de obtener todos los datos? Esta podría ser la razón. – robertly

+0

Esto es lo que recibo: 02-10 11: 30: 32.023: I/ActivityManager (109): Inicio: Intención {act = android.nfc.action.TECH_DISCOVERED flg = 0x10000000 cmp = com.google.android.tag /com.android.apps.tag.TagViewer (tiene extras)} de pid 194 02-10 11: 30: 32.312: I/ActivityManager (109): Inicio: Intención {act = android.intent.action.VIEW dat = contenido: //com.android.apps.tag/ndef_msgs/19 flg = 0x4000000 cmp = com.google.android.tag/com.android.apps.tag.TagViewer (tiene extras)} del pid -1 Sí, quise decir cuando moví el teléfono rápidamente. Sé que esa es la causa, pero quiero que se muestre mi aplicación. – pimd

Respuesta

1

Supongo que filtra NDEF_DISCOVERED en su aplicación actualmente y este es el caso que funciona. Si es así, agregaría un intento de TECH_DISCOVERED por ahora, asegurándome de agregar una tecnología compatible con su tarjeta para que su aplicación pueda atrapar este caso de esquina. Desde el logcat, no puedo averiguar qué tecnología es esta etiqueta, así que no puedo ayudarte a resolver esto.

Después de que su aplicación pueda filtrar TECH_DISCOVERED, lea los datos que están en la etiqueta y vea si realmente tiene la carga completa. Si no es así, esto sugeriría que el escaneo no está recogiendo toda la carga útil y que mover su teléfono rápidamente es una limitación de la NFC. Si la carga útil es la carga completa, entonces consideraría esto un error. Por favor, informe de nuevo.

+0

Es probable que el problema se deba a que el teléfono no tiene tiempo suficiente para verificar los datos NDEF de la tarjeta. Como la tarjeta desapareció prematuramente, no hay una solución real aquí. Como NDEF_DISCOVERED no depende de una tecnología específica (NfcA, NfcB, IsoDep, NfcF, NfcV), no agregaría un filtro de intención TECH_DISCOVERED para este caso. –

+0

¿Alguna solución a este problema? Tengo un problema similar en este momento. – Doszi89

7

Vaya a Configuración -> Aplicaciones -> -> Todas las etiquetas (en mi caso) -> deshabilitarlo

+1

Sí, sí! El mío no era desconocido, pero estaba atrapando a todos ... – TWiStErRob

+0

si deshabilitar las etiquetas de la configuración resolverá su problema – Rajkumar

Cuestiones relacionadas