1 votos

Eliminando permisos de apk

Estoy tratando de eliminar permisos de cierta aplicación bancaria para prevenir abusos.

He logrado descargar el archivo apk usando un emulador (AVD) y appextractor. He utilizado toolapk para extraer el archivo apk, modificar AndroidManifest.xml, volver a empaquetarlo y firmar el archivo usando jarsigner.

La instalación en mi teléfono falla con "La aplicación no se ha instalado.". La situación es la misma en una instancia fresca del emulador (sin gapps). He intentado instalar una versión no modificada de la aplicación en el emulador con el mismo error.

¿Cómo puedo obtener un mensaje de error más descriptivo? ¿Qué me falta?

Mi dispositivo es un Galaxy Nexus con CyanogenMod sin gapps.

*lectura de contactos y registro de llamadas, lectura/escritura en la tarjeta SD, etc...

2 votos

Instálalo usando adb y también usa logcat para obtener información más descriptiva. ¿Qué permisos estás intentando eliminar? La ausencia de permisos puede causar inestabilidad en la aplicación. Consulta si las respuestas aquí proporcionan una buena alternativa a lo que estás intentando lograr: ¿Es posible instalar una aplicación y excluir algunos de sus permisos solicitados?

2 votos

Un emulador de Android ejecutado desde la computadora (aparte de Bluestacks) no es un entorno ideal para probar una aplicación. Te recomiendo enviar los paquetes modificados directamente a tu Nexus. En cuanto al error "App not installed.", puedo confirmar que no depende de ningún permiso. Normalmente se genera a partir de un error/fallo en la fase de recomilar/firmar el APK, siempre y cuando tu AndroidManifest.xml sea sintácticamente correcto. Por esto, en lugar de usar el estándar ApkTool, te recomiendo buscar Apk-Multi-Tool, un script semiautomatizado más herramientas.

0 votos

La sugerencia de logcat fue muy útil. @Firelord: si lo publicas como respuesta, podré aceptarlo. Resulta que la aplicación necesita la biblioteca compartida com.google.android.maps. Tendré que hacer un marcador de posición.

3voto

Carlos Rodrigues Puntos 91

Resulta que la instalación falla porque falta una biblioteca compartida. Usando la aplicación aLogcat ROOT del repositorio f-droid, pude ver el siguiente error:

E/PackageManager:( 1221): El paquete com.evil-bank requiere la biblioteca compartida com.google.android.maps que no está disponible: falla!

Una solución sería instalar la aplicación de Google Maps (o todo el paquete gapps). No voy a probar esta opción.

Gracias a Firelord por señalar el uso de logcat.

1voto

anol Puntos 436

Si utilizas CyanogenMod, no es necesario eliminar Permisos de la APK. Simplemente ve a Ajustes->Privacidad->Gestionar Permisos de la aplicación después de instalarla y elimina o añade lo que quieras. Alternativamente, con aún más control sobre los permisos (incluso puedes ser específico para qué métodos pueden ser utilizados) puedes instalar el módulo Xposed XPrivacy (yo lo tengo instalado y lo uso mucho).

0 votos

¿Estás absolutamente seguro de que la aplicación no podrá hacer nada malicioso mientras se instala y antes de revocar los permisos? Creo que modificar el apk es una solución más adecuada.

2 votos

No se puede revocar ningún permiso a través del Administrador de privacidad. Y sí, en el período de tiempo entre la instalación y la revocación, tiene suficiente tiempo para utilizarlo.

0 votos

Tal vez di el camino equivocado, soy alemán así que no estoy seguro de cómo se llama en la versión en inglés. Pero definitivamente debería estar allí, a menos que estés usando una versión antigua de CyanogenMod. En este caso, XPrivacy hace un trabajo aún mejor incluso en versiones antiguas del sistema operativo, el proceso de instalación es solo un poco más avanzado.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X