Congelar una aplicación en Android
¿Qué significa eso de congelar (freeze) una aplicación? La idea es muy sencilla y se trata de deshabilitar una apliación en el sistema. Es una especie de desinstalación de la misma sin borrarla del sistema. Es decir, la aplicación todavía se encuentra en nuestro sistema ocupando espacio de almacenamiento, pero el sistema ignora dicha aplicación, por lo tanto lo que si ganamos es memoria RAM.
¿Por qué quiere uno congelar una aplicación en vez de desinstalarla o borrarla? Como decía antes una de las mayores ventajas de congelar una aplicación es ahorrar memoria y por lo tanto hacer que nuestro sistema vaya más rápido. No sólo eso, si no que las aplicaciones que congelemos tampoco apareceran en nuestro terminal, o sea como si no estuvieran. La razón principal de congelar y no desisintalar o borrar las aplicaciones es la de poder “restaurar” nuestro sistema a como vino de fábrica. De hecho, por experiencia propia, cuando borras o desinstalas ciertas aplicaciones el sistema se vuelve inestable. Incluso si lo que desinstalas no es un componente del sistema, que como veremos más adelante también puedes congelar.
Razones para congelar una aplicación La principal razón para congelar una aplicación es la de quitar del medio el bloatware (aplicaciones que te instala tu proveedor por defecto). Estas suelen ser aplicaciones que no usas y también te suelen meter demos para que acabes comprando dicha aplicación. Otra razón, y esta es la que me llevó a investigar un poco sobre este tema es la de desactivar las actualizaciones OTA (Over The Air). El problema es que cada vez que mi proveedor mandaba una actualización, perdía el acceso root al terminal. La única forma que encontré de desactivar estás actualizaciones fue la congelar la aplicación Upgrader (com.motorola.upgrader). ¡OJO! Si haces esto, tu terminal no instalará ninguna actualización de tu proveedor.
¿Cómo se congela una aplicación? La forma más sencilla de llevar a cabo esta tarea es la usar alguna aplicación tipo Titanium Backup (versión de pago, la gratuita no te permita congelar aplicaciones), AntTek App Manager (esta es la que actualmente estoy usando y es gratuita), etc.
Para los más aventureros tenemos la forma manual. Desde adb o una shell podemos ejecutar el comando “pm” o Packet Manager (método usado por Titanium Backup). Este es un gestor de paquetes para Android al estilo apt-get, yum, etc. Si ejecutamos dicho comando sin ningún parámtro veremos las opciones que tenemos. Así a modo de ejemplo y guía rápida tenemos:
Listar los paquetes que tenemos instalados
pm list packages
Mostrar los paquetes congelados
pm list packages -d
Congelar un paquete o componente
pm disable nombre_paquete_o_componente
Descongelar un paquete o componente
pm enable nombre_paquete_o_componente
Por ejemplo, deshabilitemos y habilitemos el NFS Shift, que viene instalado por el proveedor:
# pm list packages nfs package:com.ideaworks3d.nfsshift # pm disable com.ideaworks3d.nfsshift Package com.ideaworks3d.nfsshift new state: disabled # pm list packages -d package:com.ideaworks3d.nfsshift # pm enable com.ideaworks3d.nfsshift Package com.ideaworks3d.nfsshift new state: enabled #
Otra forma de congelar una aplicación es renombrando la misma, método usado por AntTek. Ésta renombra el paquete .apk a .apk_fro. Ejemplo extraido de mi propio terminal:
# ls -l *_fro -rwxrwxrwx root root 1207728 2011-01-30 07:58 Blockbuster.apk_fro -rwxrwxrwx root root 1416012 2011-09-26 21:01 CarDock.apk_fro -rwxrwxrwx root root 583001 2011-09-26 21:01 CityID.apk_fro lrwxrwxrwx root root 2011-06-01 19:19 Madden.apk_fro -> /preinstall/symlink/Madden.apk -rwxrwxrwx root root 183943 2011-09-26 21:02 Music.apk_fro -rwxrwxrwx root root 8006 2011-09-26 21:02 Upgrader.apk_fro -rwxrwxrwx root root 912210 2008-08-01 08:00 VCast.apk_fro -rwxrwxrwx root root 3359231 2008-08-01 08:00 vzw_vnav_DROIDX_rel_PROD_signed.apk_fro
También puedes mover las aplicaciones de sitio, a un directorio temporal, etc.
Hagas lo que hagas, asegúrate de poder restaurar todas las aplicaciones tal y como estaban.
Nota: para poder congelar componentes o paquetes del sistema, incluidos aquellos que tu proveedor incluye de “fábrica” necesitas tener acceso “root”.
Buscar
Entradas Recientes
- Posts
- Reemplazando la bateria del AirTag
- OpenExpo Europe décima edición, 18 de mayo: El Epicentro de la Innovación y la Transformación Digital
- Docker Init
- Kubernetes para profesionales
- Agenda: OpenExpo Europe 2022 llega el 30 de junio en formato presencial
- Libro 'Manual de la Resilencia', de Alejandro Corletti, toda una referencia para la gestión de la seguridad en nuestros sistemas
- Mujeres hackers en ElevenPaths Radio
- Creando certificados X.509 caducados
- Generador de imágenes Docker para infosec