¿Cómo desinstalarías una aplicación Home (lanzador) no autorizada?

Si tuviera que instalar una aplicación de la pantalla de inicio que no le da acceso a la pantalla de configuración del sistema (para ir a Administrar aplicaciones) y tampoco le permite iniciar aplicaciones (como la aplicación Market o la instalación/desinstalación de terceros), ¿Hay ALGUNA forma de desinstalar dicha aplicación?

Sé que Android requiere su permiso antes de permitir que una nueva aplicación se haga cargo del privilegio de la pantalla de inicio. Pero supongamos que está probando una aplicación Launcher recientemente publicada que tiene errores (o es maliciosa). Por supuesto, aún le dirá a Android que está bien darle a esta aplicación el privilegio de la pantalla de inicio. Ahora, una vez que está instalado, ¿su teléfono ahora es efectivamente inútil?

¿Hay alguna forma de que un usuario final típico (que no tiene Eclipse/ADB) salga de esta situación? Aparte de hacer un restablecimiento completo de fábrica?

Me doy cuenta de que hay formas de desinstalar una aplicación a través de ADB ("adb uninstall package.name")

Pero parece que un usuario final típico está potencialmente jodido si alguna vez instala una aplicación maliciosa o con errores. Esto parece un gran agujero de seguridad en Android, ¿no?

Diría que elimine la aplicación de la tarjeta SD, si estaba instalada allí, pero creo que esto se ha mencionado antes con una solución mejor.
@glasnt Sugerencia útil, pero me pregunto sobre el caso cuando el iniciador está instalado en el almacenamiento local, no en SD. Gracias.
@glasnt: el Lanzador normalmente no se puede instalar en la tarjeta SD, ya que un Lanzador debe estar disponible cuando se extrae la tarjeta SD.
Una situación como esta ocurrió recientemente debido a un error del desarrollador en lugar de malicia. Puede encontrar buena información en esta pregunta: android.stackexchange.com/questions/4910/…

Respuestas (3)

Inicie su dispositivo en MODO SEGURO y luego desinstale la aplicación que está causando problemas. Al reiniciar se saldrá del modo seguro. Aquí se explica cómo acceder al MODO SEGURO en algunos dispositivos populares.

Dispositivos HTC con botones físicos:

  • Apaga tu teléfono Android.
  • Presione el botón Menú en su teléfono.
  • Mientras mantiene presionado el botón Menú, encienda su dispositivo y siga presionando el botón Menú hasta que vea la pantalla de bloqueo.
  • Modo seguro ahora debería estar impreso en la esquina inferior izquierda de su pantalla. Cuando está en modo seguro, Android no carga ninguna aplicación de terceros y puede desinstalar la aplicación que le causó problemas desde Configuración > Aplicaciones > Administrar aplicaciones.

Nexo uno:

  • Apaga tu Nexus. Retire la batería si no se puede hacer de la manera normal.
  • Presiona el botón de encendido para encender tu teléfono y justo cuando aparezca el logotipo, presiona y mantén presionada la rueda de desplazamiento. También debería poder mantener presionado el botón Menú sensible al tacto en este punto, si lo prefiere.
  • Siga presionando hasta que vea la pantalla de bloqueo y ahora debería estar en modo seguro.

Motorola Droide

  • Apague su Droid y abra el teclado de hardware.
  • Presione el botón de encendido y el botón Menú en el teclado simultáneamente.
  • Mantenga presionada la tecla Menú hasta que vea el "Ojo de droide" y sienta que su teléfono vibra.
  • Su Droid debería iniciarse y decir "Modo seguro" en la esquina inferior izquierda de la pantalla.

Samsung Galaxy S

  1. Apague el teléfono.

  2. Vuelva a encender el teléfono mientras mantiene presionado el botón Menú.

  3. Mantenga presionado el botón Menú hasta que se cargue la pantalla de inicio. La esquina inferior izquierda debería decir Modo seguro.

excelente respuesta De hecho, esto permite deshabilitar una aplicación doméstica maliciosa de "prueba" que desarrollé para explorar este problema. Gracias.

Para crear dicho lanzador malicioso, deberá:

  1. Desactivar configuración > Aplicaciones > Administrar aplicaciones
  2. Deshabilitar Configuración > Aplicaciones > Desarrollo > Depuración USB
  3. Deshabilitar Market (para evitar que descargue aplicaciones de Home Switcher)
  4. Evite que se abran todas las demás aplicaciones de tipo Lanzador (de lo contrario, puede iniciar el otro Lanzador e ir a Configuración desde allí)
  5. Deshabilite la aplicación de tipo Terminal Emulator (para evitar la desinstalación mediante pmo rm-ing el .apk)
  6. ...¿otros?

Esto parece un gran agujero de seguridad en Android, ¿no?

No. Cuando los expertos en seguridad hablan de que un sistema tiene una buena seguridad, no hablan de un usuario estúpido que hace cosas estúpidas en su sistema. Un usuario estúpido que otorga privilegios injustificados a un programa que no es de confianza es un problema social, no un problema de seguridad.

Linux (y Android) es seguro no porque sea imposible estropear el sistema (puede, muy fácilmente, simplemente escribir sudo rm -rf /). Linux es seguro porque un programa malicioso no puede estropear el sistema sin la autorización del usuario y un usuario no puede estropear el sistema a menos que tenga los privilegios apropiados para estropearlo (un usuario con privilegio de root puede estropear el sistema en miles de maneras).

A diferencia de otros sistemas operativos, Linux (y Android) no intenta proteger al usuario de hacer algo estúpido (ya que dicha protección también evitaría que los usuarios avanzados hagan algo inteligente). Seguirá ciegamente tu orden cuando le digas que se destruya a sí mismo (siempre y cuando el usuario tenga el privilegio de ordenar al sistema que se destruya a sí mismo).

La siguiente conferencia de sudoers por primera vez resume el camino de Unix/Linux hacia la seguridad:

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.

En cualquier caso, si dicho lanzador malicioso ingresa a Market, podemos estar seguros de que Google lo eliminará de Market inmediatamente sin demora (y probablemente emitirá un comando de desinstalación remota). Y si instala dicho lanzador desde fuera de Market, entonces no es un "usuario típico", es responsable de su propio si está instalando programas desde fuera de Market.

De acuerdo, espero que tanto los comentarios como las calificaciones disuadan a otros de usar dicha aplicación, si existiera.
Esto no siempre es cierto: me gustaría referirme al incidente cuando la popular aplicación de pantalla de inicio LauncherPro "caducó". Aquellos que no habían actualizado a una versión más nueva fueron bloqueados y tuvieron que usar una forma indirecta para volver a ingresar y descargar una nueva actualización. El desarrollador reconoció su error y abandonó la idea de poner una "bomba de relojería" en su aplicación.
Su lista de cosas que un lanzador malicioso debe desactivar es engañosa. Cuando crea un reemplazo de la aplicación de inicio, todas esas cosas están deshabilitadas de manera predeterminada. En realidad, debe incluir deliberadamente el acceso a la Configuración en su lanzador. Su punto acerca de que esto técnicamente es un problema de usabilidad y no un problema de seguridad es justo. Pero eso no hace que este grave problema de usabilidad desaparezca. Android sabiamente protege (al negar la raíz) al usuario de hacer muchas cosas estúpidas. Educar al mundo no es realista. Problemas como estos tienen solución (por ejemplo, el MODO SEGURO mencionado a continuación).
@jpeskin: Cierto, pero si una aplicación de la pantalla de inicio no tiene una lista de aplicaciones (que, a menos que esté específicamente deshabilitada, incluye Settings.apk y otras cosas); entonces la mayoría de los usuarios no serían tan tontos como para marcar "Establecer como predeterminado" y podrían volver a su pantalla de inicio anterior presionando el botón Inicio. Esto significa que una pantalla de inicio verdaderamente maliciosa debe engañar al usuario para que marque "Establecer como predeterminado", que solo se puede lograr presentando una lista de aplicaciones (y esperando que el usuario no haya notado que todas las aplicaciones que se pueden usar para cambiar las pantallas de inicio son desaparecidos).
@jpeskin: El caso con LauncherPro es interesante, ya que es una aplicación de pantalla de inicio muy buena que se volvió deshonesta debido a un error en el código de caducidad, y el error solo se muestra un tiempo después de instalarse (lo que significa que la mayoría de la gente habría verificado el ajuste predeterminado). Pero este incidente destaca que, debido a la posición especial de la pantalla de inicio (como la aplicación que "poseía" el botón de inicio), una pantalla de inicio maliciosa puede causar agravio a los usuarios y prácticamente apoderarse del dispositivo. Veremos si Google hará algo al respecto en futuras versiones.

Para el "usuario final típico", las formas más fáciles probablemente sean:

Si el "pícaro" se instaló desde Google Play:

  1. En una computadora, abra el sitio web de Play Store con su navegador web favorito
  2. Inicie sesión con las credenciales de su cuenta de Google
  3. Presiona la pestaña "Mis aplicaciones de Android" en la esquina superior derecha de la página
  4. Busque su aplicación "rogue"
  5. Presiona el símbolo de la papelera al lado

Esto desinstalará la aplicación seleccionada. Por supuesto, esto solo funciona para aplicaciones instaladas a través de Google Play.

Si cargó el "pícaro" (lo instaló desde otra fuente)

Si cargó lateralmente al "pícaro", necesitará un par de pasos más. Siga 1+2 de la lista anterior, luego...

  1. Busque cualquier otra aplicación de pantalla de inicio/lanzador
  2. Presiona el botón "Instalar" en su página
  3. Si tiene varios dispositivos conectados a esta cuenta de Google, seleccione el que tiene la aplicación no autorizada.
  4. Presiona "Aceptar"
  5. En los próximos minutos, el nuevo iniciador debería estar instalado en su dispositivo. Hasta entonces, es posible que desee encenderlo periódicamente para asegurarse de que permanezca "activo" (y conectado a la red), lo que podría acelerar un poco el proceso.
  6. Una vez finalizada la instalación, pulsa el Homebotón.
  7. Como Android notó la nueva aplicación de inicio, una ventana emergente le pedirá que elija qué iniciador iniciar. Seleccione cualquier lanzador que desee, pero no el deshonesto.
  8. Como ahora tiene un iniciador completamente funcional en ejecución, puede seguir los pasos habituales para eliminar la aplicación "falsa".