1 votos

Opción de diálogo "Usar por defecto para esta acción" o "Siempre" no se muestra para la etiqueta NFC

Acabo de completar mi aplicación de Android que escanea etiquetas NFC. Cuando una etiqueta NFC se acerca al dispositivo, el dispositivo intenta mostrar todas las aplicaciones que pueden escanear la etiqueta NFC.

Quiero que recuerde qué aplicación debe usar para escanear la etiqueta NFC. Mostró mi aplicación, pero no quiero que el sistema siempre me pregunte qué aplicación usar.

En mis dos dispositivos, no muestra ninguna opción como Usar por defecto para esta acción o Siempre, mientras que en mi otro dispositivo con Android 4.2.2, muestra las opciones.

Captura de pantalla 1 Captura de pantalla 2

¿Por qué es esto así?

0 votos

En tus dos dispositivos, ¿qué sucede si la etiqueta NFC está cerca de tu aplicación? ¿Se abre tu aplicación?

0 votos

Muestra toda la lista de aplicaciones que pueden escanear el NFC y funcionan bien, pero no muestra la opción de "Usar por defecto para esta acción" o "Siempre", por lo que la próxima vez no me pedirá que seleccione la aplicación.

1voto

Chris Roberts Puntos 7543

Esto se debe a que no puede haber un manejador predeterminado para todos los intents NFC. Tendrías que crear un tipo de archivo MIME para tu etiqueta NFC y usar ese tipo de archivo MIME como campo de datos para el filtro de intentos.

Sin embargo, este sitio no trata problemas de desarrolladores, así que sería mejor que fueras a StackExchange, por ejemplo aquí.

0 votos

Tengo un problema en dos teléfonos y funciona bien en un teléfono.

0 votos

Si estoy adivinando correctamente, el dispositivo en el que esto funciona tiene una versión antigua de Android? Esos tienen una manera diferente de resolver las intenciones NFC, y por eso puede haber una casilla de verificación.

0 votos

No, Ese dispositivo es la nueva versión de Android 4.2.2.

1voto

rizzle Puntos 3127

Los eventos de descubrimiento NFC que indican solo una cierta tecnología de etiqueta (o incluso solo la presencia de cualquier etiqueta) suelen ser demasiado amplios para estar vinculados a una sola aplicación. Parece que el equipo de Android decidió por lo tanto que no debería ser posible que una aplicación/actividad tenga prioridad para un evento tan poco específico.

Como consecuencia, la única forma de evitar este selector de intención obligatorio es si se utiliza una etiqueta formateada NDEF y si el desarrollador de la aplicación registró la aplicación/actividad para una intención NDEF más específica (por ejemplo, una URI, un tipo externo del NFC Forum o un tipo MIME).

-2voto

user54027 Puntos 21

Alguien o algo ha establecido los valores predeterminados para la(s) aplicación(es), y este valor predeterminado se estableció tan pronto como alguien o algo lo configuró internamente o al presionar el botón "Siempre".

En este caso, tendrás que ir a tu Cajón de aplicaciones, entrar en Configuración y encontrar tu Administrador de aplicaciones. En este caso, querrás ir a la aplicación que no tiene la opción. Encuéntrala, haz clic en ella, ve abajo y presiona "Borrar valores predeterminados", ahora, presiona el botón de inicio, encuentra la aplicación que deseas ejecutar ¡y listo! El menú de acciones debería restablecerse solo.

Si no lo hace, encuentra la aplicación que se está ejecutando automáticamente al iniciar ese objeto específico y presiona "Borrar valores predeterminados".

0 votos

Este no es mi caso, la ventana de diálogo muestra la lista de todas las aplicaciones que pueden escanear la etiqueta NFC, pero el problema es que "“Usar por defecto para esta acción” o “Siempre” no se muestran. Si alguna aplicación ya está establecida como predeterminada, entonces la captura de pantalla anterior no solicitará a las aplicaciones que escaneen la etiqueta NFC. La captura de pantalla anterior muestra dos aplicaciones que pueden escanear la NFC.

2 votos

@TheFxApoc las capturas de pantalla muestran que no se ha establecido ningún valor predeterminado (de lo contrario, no verías ese cuadro de diálogo en absoluto)

-2voto

TimH Puntos 436

Solo deshabilite la aplicación predeterminada para NFC buscándola en la lista de aplicaciones. Después de esto, su aplicación personalizada será la aplicación predeterminada para ejecutar, cuando toque la etiqueta NFC y ejecutará la tarea según la configuración que haya realizado en la etiqueta NFC

1 votos

Si se muestra el diálogo "chose", obviamente no hay una aplicación predeterminada configurada, por lo que no se puede deshabilitar (ver también el comentario de GATrawn en esta respuesta).

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X