Google Maps parece tener una cantidad increíble de Intenciones registradas, así como otras formas de iniciarse.
Dado que esta es una aplicación bastante hambrienta de recursos (especialmente en cuanto a memoria), me gustaría mucho que no se ejecute permanentemente a menos que / realmente la necesite. Sin embargo, Android lo sigue iniciando todo el tiempo, por ejemplo, cuando cambia el estado de conectividad (que para mí ocurre con bastante frecuencia en interiores) o cuando cambia la ubicación de GPS / red.
¿Hay alguna forma de garantizar que Google Maps no inicie CUALQUIER proceso, garantizado, hasta que haga clic en un icono para iniciarlo deliberadamente?
Entorno : Droid X, ejecutando stock rooteado Froyo 2.2; Tengo Autostarts . y Advanced Task Killer, así como la versión Pro de Titanium Backup instalada.
Estoy bastante abierto a casi cualquier método siempre que
Es confiable.
Me permite usar Google Maps con una funcionalidad 100% prevista una vez que lo necesito, sin requerir 5 minutos de trabajo para volver a configurarlo.
Idealmente, no requiere que reinicie para usarlo, pero este no es un factor decisivo.
ESTRICTAMENTE preferiría un método genérico que sería aplicable a otras aplicaciones, NO solo a Google Maps.
Soy un desarrollador de software con una gran dosis de experiencia en administración de sistemas Unix / Linux. En otras palabras, las soluciones que requieren una solicitud de shell o escribir / ejecutar scripts de shell (o Perl en Android Scripting Environment) son extremadamente bienvenidas.
Las soluciones que implican escribir mi propia aplicación Java para Android son aceptables siempre que estén lo suficientemente detalladas como para que un novato en desarrollo de Android pueda realizar al menos algo de trabajo sin perder el 100%.
Cosas que probé:
Matar los procesos a través de Task Killer NO está funcionando: vuelven a funcionar, ya sea de inmediato o en poco tiempo. Probablemente a través de Intentos pero no 100% seguro.
Métodos estándar para deshacerse de los problemas de GMaps (cerrar sesión en Latitude / apagar el GPS y el localizador de red). Esto parece ayudar mucho, PERO encuentro inaceptable la necesidad de apagar permanentemente el GPS / localizador, por ejemplo, no me permite ejecutar la aplicación Locale o las cosas Tasker basadas en el entorno local.
Congelar a través de Titanium Backup Pro. Esto requiere un reinicio y generalmente no es muy agradable.
Los posibles enfoques en los que pensé (pero no sé cómo hacerlo) son:
De alguna manera, elimine TOTALMENTE (apague) todos los Intentos registrados por Google Maps cuando no sea necesario.
Problemas: Primero, no sé cuáles son TODOS los intentos que utiliza Google Maps.
En segundo lugar, la única forma práctica de hacer eso que conozco es la aplicación Autostarts, que NO es una solución viable: lleva ~ 5-10 minutos encontrar y volver a habilitar todos los intentos que conozco (Autostarts es realmente pobre por -Aplicación de intención de aplicación: se centra en la intención por intención), no importa las posibles intenciones que Autostarts NO conoce (es una caja negra, no sé qué intenciones se pierden si las hay.
Tener un script que cambiar el nombre de los archivos JAR o lo que los archivos ejecutables en Android son (toda APK?) De decir
GoogleMaps.apk
aGoogleMaps.disabled.apk
ida y vuelta.Problema: No sé si esto es posible en un Froyo rooteado. Además, Google Maps estaba preinstalado en DroidX, por lo que cambiar el nombre de alguna manera SOLO afectaría la actualización, pero no la aplicación original.
Tenga un script que irá al APK y cambiará el nombre / moverá / vaciará el archivo de manifiesto para eliminar cualquier intento de esa aplicación.
Problema: ¿Esto requeriría una recompilación? Definitivamente requiere un reinicio que es un menos