Interrupción del botón de inicio en android

Estoy tratando de entender las formas de anular la funcionalidad del botón de inicio en Android. Estoy haciendo una aplicación LockScreen y el botón HOME está desbloqueando el dispositivo.

He estado investigando los últimos 3 días para una manera de hacerlo, y todas las soluciones que he encontrado no son 100% eficaces (principalmente debido a la naturaleza de HOME).

He implementado soluciones para todas las soluciones a continuación en estos tres días, pero Im todavía no satisfecho.

Problema:

Quiero ser capaz de anular la funcionalidad del botón HOME de la misma manera que la aplicación WidgetLocker en la AppStore. WidgetLocker no es un lanzador casero y todavía puede anular el HOME mejor que cualquier persona.

Enlace a la aplicación WidgetLocker

Renuncia

  • En primer lugar, sé que se trata de una medida de seguridad en Android para que una aplicación no tome el control total del dispositivo y estoy de acuerdo con él.
  • La forma oficial es implementar un lanzador de casa y es mi preferido de todos ellos, por desgracia mi jefe todavía no está 100% convencido en el camino que seleccioné, hasta agotar todas las demás posibilidades.
  • Debe ser para la versión 4.0+ de android

Soluciones

  • Implementar como iniciador de inicio, captura la intención de HOME y cuidar de pulsaciones de botón de inicio, esto tiene el problema de que el usuario debe seleccionar la aplicación como el inicio por defecto de inicio y no puede entender por qué (otro problema que sé, pero aún)
  • Implementar un servicio con una vista SYSTEM_OVERLAY que se ejecuta cada vez que el dispositivo está bloqueado, siendo efectivamente en la parte superior de todo, por desgracia (o, por fortuna, la seguridad) las pulsaciones de botón de inicio siguen siendo enviados a la aplicación de abajo y el inicio por defecto lanzador sigue siendo llamado.
  • Implementar una actividad paralela a la que implementa la pantalla de bloqueo, que contiene el INICIO de inicio que se activa / desactiva de forma programática en las opciones de mi aplicación, cambiando efectivamente la aplicación principal a un homelauncher a petición, cuando se llama a esta actividad se inicia la lockscreen actividad.

Hay alguna otra manera de hacer esto?

Gracias por adelantado.

Busque en el siguiente tema una forma de anular el botón de inicio: Sobreescribir la funcionalidad del botón Inicio

Personalmente, aunque sugeriría ir a la opción donde implementar su propia pantalla de inicio. Utilizamos una instalación similair donde trabajo. La aplicación que queremos que la gente utilice se establece como la opción predeterminada cuando se presiona el botón de inicio. De esa manera podemos controlar donde la gente puede ir en gran medida. Estas opciones sólo se pueden restablecer restableciendo los valores predeterminados de aplicación de la aplicación. Esto hace que no sea permanente en caso de que se necesite una corrección al dispositivo.

Para la última implementación, solo instale con las siguientes líneas en su manifiesto

<category android:name="android.intent.category.HOME" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.DEFAULT" /> 

Ahora, la próxima vez que pulse el botón de inicio, una ventana emergente le preguntará qué desea hacer.

  • Una forma de obtener captura doble toque en la pantalla de bloqueo de Android?
  • Una forma de obtener desbloquear evento en android?
  • Android Lollipop - controles de música de pantalla de bloqueo
  • Android LockScreen
  • "Bloquear pantalla" con contraseña de seguridad personalizada
  • Técnicas de implementación de la pantalla de bloqueo personalizado
  • Activar o desactivar la pantalla PatternLock del código
  • Evitar la expansión de la barra de estado
  • ¿Cómo bloquear mediante programación la pantalla en Android?
  • La pantalla de bloqueo se muestra entre las actividades
  • Diferenciar RemoteControlClient de los auriculares
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.