Deshabilitar el botón de inicio en Android ICS (4.0)

Estoy haciendo una aplicación propietaria para una empresa que nunca la lanzará al Android Market (o Play Store, supongo ahora) en Ice Cream Sandwich (Android 4.0).

Necesito desactivar la página de inicio para que los usuarios no puedan desinstalar el software maliciosamente ni eliminar los datos que captura la aplicación. Esta última versión es la primera escrita en 4.0, las versiones anteriores fueron escritas en 2.2 y 3.2.

Para deshabilitar el botón de Inicio en 2.2, asocié la aplicación como un reemplazo del hogar, por lo que el botón acaba de reabrir la aplicación, pero ya no puedo usar este método, ya que eso nos impide realizar nuestras actualizaciones a la aplicación (no lo hacemos). Quiero dar al usuario la opción de volver a seleccionar un valor predeterminado de Inicio, ya que eso llevaría a la eliminación de datos.

El código que tengo para deshabilitar el botón de Inicio en 3.2 es:

@Override public void onAttachedToWindow() { getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); super.onAttachedToWindow(); } 

y, en onCreate:

 KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE); KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE); lock.disableKeyguard(); 

Pero cuando ejecuto el mismo código que funcionaba en mi tableta 3.2, no funciona en mi tableta 4.0.

Me preguntaba si existe una nueva API o método que 4.0 tenga que logre el mismo efecto que tengo actualmente en mi implementación 3.2.

Gracias por cualquier ayuda o dirección.

Adán

¿Qué tal una solución?

Escriba una segunda aplicación que implemente la pantalla de inicio, cuando se presione el botón de la pantalla de inicio, esta aplicación pasará a primer plano. Desde esta aplicación, debes volver a colocar tu aplicación principal en primer plano. La única pega es que su aplicación de la pantalla de inicio nunca debe necesitar una actualización, pero debería poder actualizar la aplicación principal libremente sin la pestaña que le pide configurar el inicio automático.

Espero que tenga sentido …

No … No puede anular el botón de inicio para Android4.0 al menos … utilizando la solución de “hotveryspicy” Y, si desea responder al botón de inicio, implemente una pantalla de inicio.