Bloquear el botón Atrás de cerrar mi aplicación
Estoy utilizando el siguiente código en la actividad de mi aplicación para impedir que cierre mi aplicación en la parte posterior.
/* Prevent app from being killed on back */ @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // Back? if (keyCode == KeyEvent.KEYCODE_BACK) { // Back moveTaskToBack(true); } // Return return super.onKeyDown(keyCode, event); }
No funciona. La aplicación está configurada para ser compatible con Android 1.6 (nivel API 4). Al hacer clic en mi icono de aplicación, se reinicia mi aplicación en una actividad de Splash (que es la principal). ¿Cómo puedo evitar que mi aplicación se cierre detrás?
- Habilitación de la compatibilidad con WebGL para Android WebView
- Creación de un parche 9 dibujable en tiempo de ejecución
- Biblioteca gráfica 2D de Android
- Dimensión de imagen de fondo para la cabecera del cajón de navegación
- Android: rotar recorta las esquinas de la forma
- Cómo dibujar con framebuffer en Android?
- Dibujo sobre lienzo y guardar imagen
- Cómo blit () en android?
- ¿Qué tipo de formatos de imagen debo utilizar en una aplicación de Android?
- ¿Qué capacidades de eliminación automática de overdraw Android proporciona?
- Android: Crash: Línea de archivo XML binario: Error al inflar la clase (usando SurfaceView)
- Trazado gráfico dinámico con openGL en Android
- Cómo dibujar un gráfico en android como Wifi Analyzer App?
¿Ha intentado poner la llamada super
en un bloque de else por lo que sólo se llama si la clave no es KEYCODE_BACK
?
/* Prevent app from being killed on back */ @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // Back? if (keyCode == KeyEvent.KEYCODE_BACK) { // Back moveTaskToBack(true); return true; } else { // Return return super.onKeyDown(keyCode, event); } }
Con toda honestidad, sin embargo, no se puede confiar en esto porque una vez que su aplicación se coloca en segundo plano, en cualquier momento podría ser reciclado para el sistema de recuperar la memoria.
Una solución más sucinta: –
@Override public void onBackPressed() { // do nothing. We want to force user to stay in this activity and not drop out. }
Incluso si pudieras hacer eso, no deberías. Hacer que los usuarios mantengan la aplicación en la memoria todo el tiempo no es una buena idea y solo les molestará.
- Problema con la creación del proyecto Android NDK
- Cocos2d-x error de configuración de Android – java.lang.NullPointerException