Phonegap La aplicación de Android se reinicia en lugar de reanudar, aunque no fue destruida por el sistema operativo
He creado una aplicación Phonegap 1.5 / Android.
Mi cliente informa que, cuando abandona la aplicación con el botón Inicio y la vuelve a iniciar utilizando el icono de la aplicación, la aplicación vuelve a iniciar desde el principio en lugar de reanudarla. Sin embargo, cuando tiene el botón de inicio, la aplicación aparece en las aplicaciones recientes, y cuando accede a la aplicación a través de este menú, la aplicación se reanuda de la manera esperada.
- Pausa manualmente una aplicación en Android Phonegap
- Html5 audio en apache cordova android aplicación nativa
- Android PhoneGap Plugin, UI tabbar, redimensionar WebView
- Problemas al importar MoPub SDK con Phonegap
- Cordova - el módulo check_reqs falta para la plataforma. Saltando
Pensé que esto podría ser vinculado a la aplicación que se cierra automáticamente por el sistema operativo debido a una falta de memoria, pero si ese era el caso de la aplicación no debe reanudar cuando se hace clic en las aplicaciones recientes.
No puedo reproducir el error en mi Sony Ericsson XPERIA con Android 2.3.4, el cliente ha experimentado este comportamiento en un Motorola Defy y en otro teléfono (voy a añadir la referencia del otro teléfono y las versiones del sistema operativo tan pronto como yo Obtenerlos).
El proceso de inicialización de la aplicación se declara de esta manera:
window.addEventListener('load', function(){ document.addEventListener('deviceready', _onDeviceReady, false); }, false);
¿Podría esto ser fijado adjuntando los procesos a otros acontecimientos (aunque lo dudo, la aplicación realmente parece ser relanzado desde el principio)?
¿Hay una declaración que hacer en el manifiesto de Android para evitar este comportamiento?
Aquí está la firma de la actividad en mi AndroidManifest.xml
<application android:debuggable="true" android:icon="@drawable/appicon" android:label="@string/app_name" > <activity android:configChanges="orientation|keyboardHidden" android:name=".MyAppActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.phonegap.DroidGap" android:label="@string/app_name" android:configChanges="orientation|keyboardHidden"> <intent-filter> </intent-filter> </activity> </application>
¿Es un error conocido en algunos teléfonos / versiones de Android?
Editar : al mantener el botón de inicio no se muestran las aplicaciones que se están ejecutando actualmente, sino las aplicaciones recientes. ¿Por qué el comportamiento en ese menú sería diferente del icono principal?
- Roadblock que configura mi entorno Phonegap para Android en Windows
- Problema - blockWebkitDraw lockedfalse
- Obtener nombre de archivo después de que el filereader cargue asincrónicamente un archivo
- ¿Cómo implementar CordovaInterface para que pueda usar la cámara en la webview?
- Detectar el cambio de ubicación de la URL de webview de Android
- Error: spawn EACCES mientras que la construcción iónica android en ubuntu 14.04
- Haz que la aplicación Ionic aparezca en la lista "Compartir" y reciba datos
- Cómo leer datos fragmentados de archivo de archivo Gap de teléfono en Android
Desea agregar lo siguiente a la etiqueta de actividad en su AndroidManifest.xml:
android:launchMode="singleTask"
Así que debería verse así:
<activity android:name="MyApp" android:label="@string/app_name" android:theme="@android:style/Theme.Black.NoTitleBar" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:launchMode="singleTask">
Consulta esta página para obtener más información sobre launchMode: http://www.intridea.com/blog/2011/6/16/android-understanding-activity-launchmode
Hey Lucas tienes:
android:configChanges="orientation|keyboardHidden"
En su etiqueta de actividad en su AndroidManifest.xml.
Como usted dijo la otra cosa que podría suceder es teléfono de su cliente está funcionando bajo en memoria y el OS está matando su app para liberar memoria.
Esto es realmente por diseño en Android, donde el sistema operativo controla el ciclo de vida de la aplicación. Puede encontrar más información aquí .
Darle una oportunidad…
Use android: launchMode = "singleInstance" en la etiqueta de actividad de su archivo de manifiesto.
Tengo un Samsung Galaxy Note II y me encontré con el mismo problema. Por lo tanto, he modificado el AndroidManifest.xml y ahora funciona tanto en Samsung y HTC Thunderbolt.
Aquí están las modificaciones:
<uses-feature android:name="android.hardware.camera" android:required="false"/> <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="10"/> <activity android:configChanges="orientation|keyboardHidden" />
- Maven y Android Facebook SDK apklib
- ¿Reduce Android la velocidad de descarga cuando se apaga la pantalla?