Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

930
Vistas
El botón de retroceso del hardware del condensador iónico cierra automáticamente la aplicación

Mi configuración actual es:

@capacitor/core: 3.0.0, @ionic-native/core: 5.0.7

Estoy tratando de cambiar el comportamiento de mi aplicación para no cerrar la aplicación, sino volver a la pila de navegación. Que yo sepa, el botón de retroceso del hardware en los dispositivos Android no cerró automáticamente la aplicación hasta que actualicé Capacitor a 3.0.0

Sin embargo, lo que me confunde es que no tengo absolutamente ningún código para manejar la funcionalidad del botón Atrás, y de todo lo que estoy buscando en línea muestra que el botón Atrás no hace nada de forma predeterminada, no cierra automáticamente la aplicación como predeterminada (como parece que la mía estar haciendo). He buscado en todos los archivos del proyecto cualquier cosa que tenga que ver con "plataforma", "botón de retroceso" y "App.Exit" y no pude encontrar ningún código que pueda estar causando el cierre de la aplicación.

Intenté suscribirme al evento de presionar el botón Atrás usando el siguiente código y nunca se ejecutó. La aplicación se cierra en lugar de mostrar el cuadro de diálogo de alerta. Cambié la prioridad de 0, 10 y 99 (todas las prioridades enumeradas en la documentación de Ionic)

 this.platform.backButton.subscribeWithPriority(10, () => { alert('Back button pressed!'); });
over 4 years ago · Santiago Trujillo
5 Respuestas
Responde la pregunta

0

Tuve el mismo problema e intenté instalar todos los complementos como dice aquí

 npm install @capacitor/app @capacitor/haptics @capacitor/keyboard @capacitor/status-bar

Después de que terminé de instalar, todavía recibí el error. Además, mi complemento PushNotifications tampoco funcionaba.

Mi problema fue que olvidé eliminar el método OnCreate de MainActivity.java . Entonces, si aún tiene el problema después de instalar los complementos, intente eliminar el método OnCreate para que su MainActivity.java se vea así:

 public class MainActivity extends BridgeActivity {}

Ver más aquí .

También arregló mi complemento PushNotifications.

Si lo entiendo bien, si tienes algún plugin que no está registrado correctamente, te dará este tipo de error. Esta respuesta también me ayudó.

over 4 years ago · Santiago Trujillo Denunciar

0

  1. Instale la aplicación de condensadores.

    npm install @capacitor/app

  2. importarlo

    import { App as CapacitorApp } from '@capacitor/app';

  3. Agregue un oyente posterior si puede retroceder, entonces podemos presionar para retroceder o salir de la aplicación.

     CapacitorApp.addListener('backButton', ({canGoBack}) => { if(!canGoBack){ CapacitorApp.exitApp(); } else { window.history.back(); } });
over 4 years ago · Santiago Trujillo Denunciar

0

Tengo el mismo problema y agregar @capacitor/app a mi aplicación funcionó para fines de depuración. El problema es que, cuando construyo una aplicación de lanzamiento, aún cierra la aplicación.

--- EDITAR ---

Solucioné el problema creando una aplicación Ionic completamente nueva (con las últimas versiones de todo) y luego copiando mi código. Supongo que realmente tuvo algo que ver con las versiones instaladas de los paquetes Ionic y Capacitor.

over 4 years ago · Santiago Trujillo Denunciar

0

Debe usar el siguiente código para manejar el botón Atrás de hardware en la aplicación Ionic:

 //back button handle //Registration of push in Android and Windows Phone let lastTimeBackPress: number = 0; let timePeriodToExit: number = 2000; platform.registerBackButtonAction(() => { //Double check to exit app if (new Date().getTime() - lastTimeBackPress < timePeriodToExit) { //this.platform.exitApp(); //Exit from app this.appMinimize.minimize().then(() => { console.log('minimized successfully'); }); } else { this.toastCtrl.create({ message: this.translate.instant('EXIT_APP_MESSAGE'), duration: 3000, position: 'bottom' }).present(); lastTimeBackPress = new Date().getTime(); } });
over 4 years ago · Santiago Trujillo Denunciar

0

Entonces, me siento un poco tonto después de darme cuenta de esto, pero es porque tuve que ejecutar los siguientes comandos, porque aparentemente no los actualicé cuando actualicé Capacitor hace un tiempo. Asegúrese de que todos sus complementos estén completamente actualizados, el suyo puede ser diferente al mío.

 npm install @capacitor/app npx cap sync
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda