java - studio - StartActivityForResult desde un servicio
start intent for result example (4)
Creo que la solución es iniciar la actividad desde su servicio, luego vincular la actividad al servicio y registrar una devolución de llamada.
Me gustaría habilitar bluetooth como en este ejemplo .
Sin embargo, mi clase no es una Actividad sino un Servicio y, por lo tanto, no puedo llamar a startActivityForResult. ¿Como puedó resolver esté problema?. Sé que hay otras preguntas que han sido respondidas como
utilizar startActivityForResult de no actividad
pero esto no resuelve mi problema porque mi aplicación consiste en el servicio y nada más.
Desafortunadamente no puedes hacer eso.
La única solución que encontré (hackear) es abrir primero una Activity
con un estilo de diálogo y luego hacer la llamada allí.
Sé que esta es una pregunta antigua, pero me he encontrado con un desafío similar, y mi solución fue comenzar la actividad usando startActivity () en lugar de startActivityForResult (), y usando Intent.FLAG_ACTIVITY_NEW_TASK. Luego llame a startService () desde la actividad en lugar de setResult (), luego use onStartCommand () en lugar de onActivityResult ().
La vinculación al servicio como sugirió @Pomagranite también podría funcionar, pero parece más complicado :)
Sé que esta es una pregunta más antigua, pero me he encontrado con un desafío similar, y mi solución fue crear una actividad con android: theme = "@ android: style / Theme.NoDisplay", y luego llamar a startActivityForResult () desde ahí . Eso crea una actividad invisible que puede solicitar y recibir los intentos, antes de escribir los datos en algún lugar y luego terminarlos.