Cómo descargar el archivo apk de la aplicación directamente desde Google Play Store. Creando un archivo APK

Hola lectores de nuestro sitio. Un día, uno de los visitantes pidió ayuda; necesitaba extraer archivos APK de un teléfono inteligente Android. Por eso, decidimos describir la respuesta a esta pregunta en este artículo. Con esta operación, puede hacer una copia de seguridad de todas las aplicaciones instaladas en un teléfono inteligente, tableta u otros dispositivos que ejecutan el sistema operativo Android.

¿En qué casos se realiza una copia de seguridad de las aplicaciones instaladas?

Situación uno. Debe restablecer su teléfono a la configuración de fábrica, pero no hay acceso a Internet o solo acceso móvil. No querrás tener que volver a descargar aplicaciones de Google Play porque llevará mucho tiempo. Es para estos casos que es posible extraer archivos APK desde un dispositivo Android o .

Situación dos. Tienes instalado un juego emocionante, cuyo caché "pesa" mucho, y a tu amigo le gustó y quería el mismo juguete, pero, nuevamente, no hay acceso a Internet. Aquí tendrás que hacer una reserva para el juego instalado. Las instrucciones para instalar correctamente juegos con caché se pueden encontrar aquí.

Hay muchas situaciones de este tipo.

¿Cómo extraer archivos APK desde un dispositivo Android?

Para completar esta tarea, necesitaremos la aplicación gratuita ES Explorer, que se puede encontrar en Google Play. ¿Por qué este conductor en particular? Es simple, es un administrador de archivos excelente y fácil de usar y ya tiene una función de copia de seguridad de la aplicación integrada. Con esta función, puede extraer los archivos APK deseados de dispositivos Android.

Método 1. Ya has instalado ES Explorer, ahora iniciémoslo:

Figura 1

Nos dirigimos al menú de la aplicación para ello, pulsamos el botón que indicamos en la esquina superior izquierda de la pantalla del dispositivo. Expanda la sección "Bibliotecas" y haga clic en APLICACIONES.

Figura 2

Si hizo todo correctamente, se abrirá frente a usted una ventana con las aplicaciones de usuario instaladas. A continuación, seleccione la aplicación que desea extraer y presione el botón Reservar en la parte inferior de la pantalla.


Figura 3 Figura 4

Todas las aplicaciones extraídas se encuentran en la carpeta. « Memoria del teléfono/copias de seguridad/aplicaciones". Es posible que hayas notado que en las Figuras 3 y 4 algunos archivos están resaltados en rojo o verde, así que aquí tienes: las aplicaciones de las que se realizó una copia de seguridad anteriormente y que se encuentran en la carpeta están marcadas en verde. aplicaciones y en rojo: aplicaciones que también se extrajeron anteriormente pero se eliminaron de la carpeta aplicaciones (Solo se eliminan los archivos extraídos, no los instalados). Eso es básicamente todo lo que hay que hacer para extraer mediante este método.

Figura 5

Ahora puedes hacer lo que quieras con estos archivos: descargarlos a tu computadora, enviarlos a un amigo vía Bluetooth o correo electrónico. Permítanos recordarle una vez más que este método solo realiza una copia de seguridad de aquellas aplicaciones que fueron instaladas por el usuario, pero no de las del sistema. Para hacer una copia de seguridad de las aplicaciones del sistema, utilice el método 2.

Método 2. Lanzamos el mismo “ES Explorer”. En la parte superior de la pantalla hay una selección de secciones de memoria (Figura 6) o vaya al menú "Almacenamiento local" (Figura 7) y seleccione el elemento /Dispositivo .


Figura 6 Figura 7

A continuación debes ir a sistema/aplicación . Aquí se muestran todas las aplicaciones que están instaladas en el dispositivo: tanto de usuario como de sistema. Luego buscamos el archivo APK requerido y lo copiamos a la carpeta deseada. Por lo tanto, recibirá un archivo APK listo para instalar en otros dispositivos.

¡Advertencia! Para ambos métodos es posible que tengas que hacerlo. Es muy posible que algunos archivos APK del sistema extraídos no se instalen en otros dispositivos Android debido a que están diseñados para un firmware específico.

Eso es todo.

Esperamos que esta publicación haya ayudado a resolver el problema y haya podido extraer archivos APK de su dispositivo Android. Si conoces otras formas de reservar programas o tienes dudas similares, escríbenos.

Estad atentos, todavía quedan muchas cosas interesantes por delante.

Saludos queridos fanáticos del sistema operativo Android. En el artículo de hoy intentaré cubrir de la forma más completa posible un tema muy interesante: una selección de herramientas para crear su propia aplicación (en línea) para dispositivos basados ​​en el popular sistema operativo Android.

Con el desarrollo de las tecnologías móviles, también se está desarrollando el mercado de aplicaciones móviles, incluido el mercado de aplicaciones móviles para el sistema operativo Android. Si antes sólo podía presentar una solicitud un programador avanzado con gafas gruesas y con cinco años de estudios universitarios, ahora esta oportunidad está al alcance de cualquier persona que no esté familiarizada con los lenguajes de programación y, además, sin desconectarse de Internet, es decir, sin necesidad de desconectarse de Internet. en línea.

En la colección encontrará cuatro herramientas que le permitirán crear una aplicación de forma rápida y sencilla. Todas las herramientas propuestas son similares a los kits de construcción, debe ensamblar su primera aplicación a partir de varios componentes ya preparados, puede crear una aplicación de la misma manera que ensambla un constructor de Lego.

Todos los instrumentos fueron seleccionados de acuerdo con los siguientes criterios.:

  • Facilidad de uso. Dado que dicha herramienta será utilizada principalmente por personas que no están familiarizadas con la programación y los elementos complejos, el énfasis principal en esta pequeña selección estuvo en la conveniencia y facilidad de uso de las herramientas propuestas;
  • Interfaz intuitiva. Este punto y condición se deriva lógicamente del anterior. Además de que la interfaz de la herramienta para crear aplicaciones para el sistema operativo Android (Android) debe ser sencilla, también debe ser intuitiva;
  • Posibilidades. Cuantas más cosas diferentes “pueda” hacer una herramienta, mejor. Básicamente, todas las aplicaciones presentadas tienen el mismo conjunto de herramientas, con pequeñas diferencias y cambios.

Entonces, escribamos, comencemos a crear la aplicación (la aplicación completa se puede crear en línea), a continuación puede familiarizarse con la selección de productos de software y elegir la herramienta más conveniente y funcional para usted.

El generador de aplicaciones

Una buena herramienta para crear aplicaciones. Sin duda, la buena noticia es que puedes utilizar esta herramienta de forma totalmente gratuita. La desventaja es que este producto de software no es compatible con el idioma ruso, pero si estudiaste inglés en la escuela, al menos un poco, entonces no debería haber problemas al usar TheAppBuilder. De todas las características de este producto de software, me gustaría destacar las siguientes::

  • Gran selección de plantillas para crear tus aplicaciones de Android. Si desea crear un programa simple, entre las opciones de plantilla propuestas puede seleccionar fácilmente la que necesita;
  • La capacidad de ver estadísticas detalladas sobre la aplicación que creó;
  • Publicación sencilla y clara de la aplicación que creaste en Google Play.

AplicacionesGeyser


Otra buena herramienta de alta calidad que merece mucha atención. Como dije anteriormente, para crear )) no necesitas saber programar para Android, en este programa todo es tan simple que puedes crear una aplicación para tu proyecto en unos minutos, simplemente ensamblándola a partir de las partes de; el “constructor”. A continuación puede familiarizarse con las capacidades de la herramienta propuesta.:

  • Un gran archivo de plantillas sobre diversos temas: restaurantes, pizzerías, estudios fotográficos, vacaciones, deportes, radio, transporte de carga y muchas, muchas otras plantillas. Sólo necesitas seleccionar el apropiado y comenzar a editarlo para adaptarlo a tus necesidades;
  • Herramientas integradas para promocionar su nueva aplicación. A veces, para promocionar y promocionar su nueva aplicación necesita dedicar mucho esfuerzo y tiempo, las herramientas de promoción integradas en el creador pueden facilitar su tarea;
  • La capacidad de conectar su programa a una red publicitaria, para que pueda ganar dinero con las aplicaciones que cree.

AppsMakerstore




Una herramienta muy sencilla para crear programas para tu sistema operativo Android. La principal ventaja de esta aplicación es que puedes crear una aplicación para seis sistemas operativos móviles diferentes de una sola vez. Otras ventajas de esta herramienta incluyen las siguientes::

  • Capacidad para trabajar con el diseñador en línea;
  • Es posible registrar una cuenta gratuita;
  • Un gran archivo de plantillas para su aplicación de Android; puede escribir la aplicación necesaria con dos clics.

Eso es todo por hoy. Espero que hayas elegido la herramienta adecuada para ti y sepas cómo realizar tu primera aplicación. También escribimos nuestra opinión en los comentarios de este material.

Muy a menudo, después de descargar una aplicación de Google Play o de otra fuente desconocida, es necesario guardar el archivo de instalación con la aplicación (.apk) en su dispositivo. Por ejemplo, para transferir una aplicación interesante a través de Bluetooth. Sin embargo, no siempre hay tiempo para buscar el archivo de instalación en varios servicios de alojamiento de archivos y numerosos recursos dedicados a temas de Android. Por tanto, para extraer el archivo de instalación con la aplicación (.apk) del dispositivo, existen varias formas sencillas. En este ejemplo, te hablaré de los tres más populares.

Método número 1

Para extraer el archivo de instalación con la aplicación (.apk) del dispositivo es necesario:
1) Primero, descargue el administrador de archivos: Astro File Manager y ejecute la aplicación descargada. Si ya tiene instalado Astro File Manager, debe encontrarlo en su dispositivo Android y simplemente ejecutarlo (ruta completa) Menú - Administrador de archivos Astro.

2) Después de iniciar Astro File Manager, nos encontramos en una ventana en la que vemos las unidades de memoria presentes en el dispositivo y una lista de una serie de servicios en la nube (siempre puedes registrarte o iniciar sesión en ellos, ampliando así el espacio interno). del dispositivo en varios Gb extra).

3) Luego deslícese hacia la izquierda, abriendo el menú principal de la aplicación.

4) Después de esto, debes hacer clic en el elemento. Administrador de aplicaciones, llevándote a una nueva ventana que muestra todas las aplicaciones instaladas en tu smartphone o tableta.

5) Para poder extraer el archivo de instalación con la aplicación (.apk) del dispositivo, debes tocar la aplicación que deseas extraer, por ejemplo Google Chrome, tocar el ícono de Google Chrome y aparecerán dos ofertas en frente a nosotros: hacer una copia de seguridad o desinstalar.

6) Toque el punto izquierdo Res. Copie y espere a que se complete el proceso. Una vez que se completa la copia, los archivos de instalación de la aplicación se pueden encontrar en la memoria del teléfono.

7) La ruta completa a los archivos de instalación de la aplicación tiene este aspecto: / tarjeta SD/repostería.

Método número 2

Instale la aplicación de desinstalación de Root. Abra la aplicación, Root Uninstaller escaneará cuántas aplicaciones tiene y hará una copia de seguridad de todas las aplicaciones a lo largo del camino:
Desde el teléfono mnt\tarjeta SD\copias de seguridad automáticas.
Desde la computadora (para que el teléfono sea reconocido como una unidad flash) sdcard\RootUnistaller\autobackups.

Método número 3

Obtenemos raíz. Instale la aplicación. Abre la aplicación y sigue la ruta \ datos\aplicación\ y seleccione la aplicación. Si está interesado en las aplicaciones del sistema, siga esta ruta\ sistema\aplicación\ y seleccione la aplicación. Guardamos las aplicaciones seleccionadas en la SDCARD (tarjeta de memoria) y hacemos con ella lo que queramos.

Artículos relacionados con APK:

Imagina la siguiente situación: instalaste un juego en Android, lo completaste y lo eliminaste, pero te gustó y probablemente quieras volver a jugarlo algún día. Pero para no olvidarte de este juego y, una vez más, no descargarlo durante mucho tiempo, puedes extraer el archivo apk y usarlo más tarde.

Instrucciones: extraer apk en Android

1. Vaya al Administrador de archivos ASTRO y deslícese hacia la izquierda.

2. Se abrirán herramientas adicionales. Seleccione "Administrador de aplicaciones".

3. Seleccione las aplicaciones cuyos archivos apk desea extraer. Para hacer esto, simplemente tócalos. Si desea seleccionar todas las aplicaciones, toque el ícono en la parte superior de la pantalla.

4. Aparecerán dos nuevas opciones en la parte inferior. Haga clic en "Copia de seguridad".

5. Después de esto, comenzará la copia del archivo.

Los archivos apk extraídos se ubicarán en la tarjeta SD en la carpeta “copias de seguridad”, así como en el administrador de aplicaciones ASTRO File Manager en la sección “Aplicaciones copiadas”.

Eso es todo. Espero que esta instrucción te haya sido útil.

A veces, algunas aplicaciones en Android no se adaptan de alguna manera al usuario. Un ejemplo es la publicidad intrusiva. Y también sucede que el programa es bueno para todos, pero la traducción es torcida o está completamente ausente. O, por ejemplo, el programa es una versión de prueba, pero no hay forma de obtener la versión completa. ¿Cómo cambiar la situación?

Introducción

En este artículo hablaremos sobre cómo desensamblar un paquete APK con una aplicación, mirar su estructura interna, desensamblar y descompilar el código de bytes, y también intentaremos realizar varios cambios en las aplicaciones que pueden traernos un beneficio u otro.

Para hacer todo esto usted mismo, necesitará al menos conocimientos básicos del lenguaje Java, en el que están escritas las aplicaciones de Android, y del lenguaje XML, que se utiliza en todas partes en Android, desde la descripción de la aplicación en sí y sus derechos de acceso hasta el almacenamiento de cadenas que se mostrará en la pantalla. También necesitará la capacidad de utilizar software de consola especializado.

Entonces, ¿qué es un paquete APK en el que se distribuye absolutamente todo el software de Android?

Descompilación de aplicaciones

En este artículo, solo trabajamos con código de aplicación desensamblado, pero si se realizan cambios más serios en aplicaciones grandes, comprender el código pequeño será mucho más difícil. Afortunadamente, podemos descompilar el código dex en código Java, que, aunque no es original ni está compilado, es mucho más fácil de leer y comprender la lógica de la aplicación. Para ello necesitaremos dos herramientas:

  • dex2jar es un traductor del código de bytes de Dalvik al código de bytes de JVM, a partir del cual podemos obtener código en el lenguaje Java;
  • jd-gui es un descompilador que le permite obtener código Java legible a partir del código de bytes JVM. Como alternativa, puedes utilizar Jad (www.varaneckas.com/jad); Aunque es bastante antiguo, en algunos casos genera código más legible que Jd-gui.

Así es como se deben utilizar. Primero, ejecutamos dex2jar, especificando la ruta al paquete apk como argumento:

% dex2jar.sh correo.apk

Como resultado, el paquete Java mail.jar aparecerá en el directorio actual, que ya se puede abrir en jd-gui para ver el código Java.

Disposición de paquetes APK y recepción de ellos.

Un paquete de aplicación de Android es esencialmente un archivo ZIP normal que no requiere herramientas especiales para ver su contenido o extraerlo. Basta con tener un archivador: 7zip para Windows o descomprimir la consola en Linux. Pero eso es todo sobre el envoltorio. ¿Qué hay dentro? En general, tenemos la siguiente estructura en su interior:

  • META-INF/- contiene un certificado digital de la aplicación que identifica a su creador y sumas de verificación de los archivos del paquete;
  • res/ - varios recursos que la aplicación utiliza en su trabajo, como imágenes, descripción declarativa de la interfaz, así como otros datos;
  • AndroidManifest.xml- descripción de la aplicación. Esto incluye, por ejemplo, una lista de permisos requeridos, la versión de Android requerida y la resolución de pantalla requerida;
  • clases.dex- código de bytes de aplicación compilado para la máquina virtual Dalvik;
  • recursos.arsc- también recursos, pero de otro tipo - en particular, cadenas (sí, ¡este archivo se puede utilizar para la rusificación!).

Los archivos y directorios enumerados se encuentran, si no en todos, quizás en la gran mayoría de los APK. Sin embargo, hay algunos archivos/directorios no tan comunes que vale la pena mencionar:

  • activos- análogo de recursos. La principal diferencia es que para acceder a un recurso es necesario conocer su identificador, pero la lista de activos se puede obtener dinámicamente utilizando el método AssetManager.list() en el código de la aplicación;
  • biblioteca- Bibliotecas nativas de Linux escritas con NDK (Native Development Kit).

Este directorio lo utilizan los productores de juegos que colocan allí el motor del juego escrito en C/C++, así como los creadores de aplicaciones de alto rendimiento (por ejemplo, Google Chrome). Descubrimos el dispositivo. Pero, ¿cómo se obtiene el archivo del paquete de la aplicación que le interesa? Dado que no es posible recuperar archivos APK del dispositivo sin root (se encuentran en el directorio /data/app), y no siempre es recomendable rootear, existen al menos tres formas de obtener el archivo de la aplicación en su computadora:

  • Extensión de descarga de APK para Chrome;
  • Aplicación Leecher APK real;
  • varios alojamiento de archivos y Varezniks.

Cuál usar es cuestión de gustos; preferimos usar aplicaciones separadas, por lo que describiremos el uso de Real APK Leecher, especialmente porque está escrito en Java y, en consecuencia, funcionará en Windows o Nix.

Después de iniciar el programa, debe completar tres campos: correo electrónico, contraseña e ID del dispositivo, y seleccionar un idioma. Los dos primeros son el correo electrónico y la contraseña de tu cuenta de Google que utilizas en el dispositivo. El tercero es el identificador del dispositivo y se puede obtener escribiendo el código en el marcador. # #8255## y luego encontrar la línea de ID del dispositivo. Al completar, solo necesita ingresar la identificación sin el prefijo de Android.

Después de completar y guardar, a menudo aparece el mensaje "Error al conectarse al servidor". No tiene nada que ver con Google Play, así que no dudes en ignorarlo y buscar paquetes que te interesen.

Ver y modificar

Digamos que encontraste un paquete que te interesa, lo descargaste, lo descomprimiste... y cuando intentaste ver algún archivo XML, te sorprendiste al descubrir que el archivo no era texto. ¿Cómo descompilarlo y cómo trabajar con paquetes en general? ¿Es realmente necesario instalar el SDK? No, no es necesario instalar el SDK en absoluto. De hecho, todos los pasos para extraer, modificar y empaquetar paquetes APK requieren las siguientes herramientas:

  • Archivador ZIP para desempacar y empacar;
  • pequeño- Ensamblador/desensamblador de código de bytes de la máquina virtual Dalvik (code.google.com/p/smali);
  • apto- una herramienta para empaquetar recursos (de forma predeterminada, los recursos se almacenan en formato binario para optimizar el rendimiento de la aplicación). Incluido en el SDK de Android, pero se puede obtener por separado;
  • firmante- una herramienta para firmar digitalmente un paquete modificado (bit.ly/Rmrv4M).

Puede utilizar todas estas herramientas por separado, pero esto es un inconveniente, por lo que es mejor utilizar software de nivel superior creado sobre su base. Si trabaja en Linux o Mac OS X, existe una herramienta llamada apktool. Le permite descomprimir recursos en su forma original (incluidos archivos binarios XML y arsc), reconstruir un paquete con recursos modificados, pero no sabe cómo firmar paquetes, por lo que tendrá que ejecutar la utilidad de firma manualmente. A pesar de que la utilidad está escrita en Java, su instalación no es estándar. Primero necesitas obtener el archivo jar:

$ cd /tmp $ wget http://bit.ly/WC3OCz $ tar -xjf apktool1.5.1.tar.bz2

$ wget http://bit.ly/WRjEc7 $ tar -xjf apktool-install-linux-r05-ibot.tar.bz2

$ mv apktool.jar ~/bin $ mv apktool-install-linux-r05-ibot/* ~/bin $ export PATH=~/bin:$PATH

Si trabaja en Windows, existe una herramienta excelente llamada Virtuous Ten Studio, que también acumula todas estas herramientas (incluido el propio apktool), pero en lugar de una interfaz CLI, proporciona al usuario una interfaz gráfica intuitiva con la que puede realice operaciones para desempaquetar, desensamblar y descompilar con unos pocos clics. Esta herramienta es Donation-ware, es decir, a veces aparecen ventanas pidiéndote que consigas una licencia, pero al final esto se puede tolerar. No tiene sentido describirlo, porque puedes entender la interfaz en unos minutos. Pero apktool, debido a su naturaleza de consola, debería analizarse con más detalle.


Veamos las opciones de apktool. En resumen, hay tres comandos básicos: d (decodificar), b (compilar) y if (instalar marco). Si todo está claro con los dos primeros comandos, ¿qué hace la tercera declaración condicional? Descomprime el marco de interfaz de usuario especificado, que es necesario en los casos en los que se analiza cualquier paquete del sistema.

Veamos las opciones más interesantes del primer comando:

  • -s- no desmonte archivos dex;
  • -r- no descomprimir recursos;
  • -b- no insertar información de depuración en los resultados del desmontaje del archivo dex;
  • --ruta-marco- utilice el marco de interfaz de usuario especificado en lugar del integrado en apktool. Ahora veamos un par de opciones para el comando b:
  • -F- montaje forzado sin comprobar los cambios;
  • -a- indique la ruta a aapt (una herramienta para crear un archivo APK), si por alguna razón desea utilizarlo desde otra fuente.

Usar apktool es muy sencillo para hacer esto, solo especifica uno de los comandos y la ruta al APK, por ejemplo:

$ apktool d correo.apk

Después de esto, todos los archivos extraídos y desensamblados del paquete aparecerán en el directorio de correo.

Preparación. Deshabilitar la publicidad

La teoría es, por supuesto, buena, pero ¿para qué es necesaria si no sabemos qué hacer con el paquete desempaquetado? Intentemos aplicar la teoría a nuestro favor, es decir, modificar algún software para que no nos muestre publicidad. Por ejemplo, que sea Virtual Torch, una antorcha virtual. Este software es ideal para nosotros porque está repleto de publicidad molesta y, además, es lo suficientemente sencillo como para no perderse en la jungla del código.


Entonces, utilizando uno de los métodos anteriores, descargue la aplicación del mercado. Si decide utilizar Virtuous Ten Studio, simplemente abra el archivo APK en la aplicación y descomprímalo, cree un proyecto (Archivo -> Nuevo proyecto), luego seleccione Importar archivo en el menú contextual del proyecto. Si su elección recayó en apktool, simplemente ejecute un comando:

$ apktool d com.kauf.particle.virtualtorch.apk

Después de esto, aparecerá un árbol de archivos similar al descrito en la sección anterior en el directorio com.kauf.particle.virtualtorch, pero con un directorio pequeño adicional en lugar de archivos dex y un archivo apktool.yml. El primero contiene el código desensamblado del archivo ejecutable dex de la aplicación, el segundo contiene la información de servicio necesaria para que apktool vuelva a ensamblar el paquete.

El primer lugar donde debemos buscar es, por supuesto, AndroidManifest.xml. Y aquí nos encontramos inmediatamente con la siguiente línea:

No es difícil adivinar que es el responsable de otorgar permisos a la aplicación para utilizar la conexión a Internet. De hecho, si sólo queremos deshacernos de la publicidad, lo más probable es que simplemente necesitemos bloquear la aplicación de Internet. Intentemos hacer esto. Eliminamos la línea especificada e intentamos compilar el software usando apktool:

$ apktool b com.kauf.particle.virtualtorch

El archivo APK resultante aparecerá en el directorio com.kauf.particle.virtualtorch/build/. Sin embargo, no será posible instalarlo, ya que no tiene firma digital ni sumas de verificación de archivos (simplemente no tiene un directorio META-INF/). Debemos firmar el paquete usando la utilidad apk-signer. Lanzado. La interfaz consta de dos pestañas: en la primera (generador de claves) creamos claves, en la segunda (firmante de APK) firmamos. Para crear nuestra clave privada, complete los siguientes campos:

  • Archivo de destino- archivo de salida del almacén de claves; normalmente almacena un par de claves;
  • Contraseña Y Confirmar- contraseña para el almacenamiento;
  • Alias- nombre de la clave almacenada;
  • Contraseña de alias Y Confirmar- contraseña de clave secreta;
  • Validez- período de validez (en años). El valor predeterminado es óptimo.

Los campos restantes son, en general, opcionales, pero se debe completar al menos uno.


ADVERTENCIA

Para firmar una aplicación usando apk-signer, debe instalar el SDK de Android y especificar la ruta completa en la configuración de la aplicación.

Toda la información se proporciona únicamente con fines informativos. Ni los editores ni el autor son responsables de ningún posible daño causado por los materiales de este artículo.

Ahora puedes firmar el APK con esta clave. En la pestaña Firmante de APK, seleccione el archivo recién generado, ingrese la contraseña, el alias de clave y la contraseña, luego busque el archivo APK y haga clic audazmente en el botón "Firmar". Si todo va bien, se firmará el paquete.

INFORMACIÓN

Como firmamos el paquete con nuestra propia clave, entrará en conflicto con la aplicación original, lo que significa que cuando intentemos actualizar el software a través del mercado, recibiremos un error.

Solo se requiere una firma digital para software de terceros, por lo que si está modificando aplicaciones del sistema que están instaladas copiándolas en el directorio /system/app/, no necesita firmarlas.

Después de eso, descargue el paquete a su teléfono inteligente, instálelo y ejecútelo. ¡Listo, el anuncio desapareció! Sin embargo, en su lugar apareció un mensaje de que no tenemos Internet o no tenemos los permisos adecuados. En teoría, esto podría ser suficiente, pero el mensaje parece molesto y, para ser honesto, tuvimos suerte con una aplicación estúpida. Lo más probable es que el software escrito normalmente aclare sus credenciales o compruebe la conexión a Internet y, de lo contrario, simplemente se niegue a iniciarse. ¿Qué hacer en este caso? Por supuesto, edite el código.

Normalmente, los autores de aplicaciones crean clases especiales para mostrar anuncios y llaman a los métodos de estas clases cuando se inicia la aplicación o una de sus "actividades" (en términos simples, pantallas de aplicaciones). Intentemos encontrar estas clases. Vamos al directorio pequeño, luego a com (org contiene solo la biblioteca gráfica abierta cocos2d), luego a kauf (aquí está, porque este es el nombre del desarrollador y todo su código está ahí), y aquí está, el directorio de marketing. En su interior encontramos un montón de archivos con la extensión smali. Estas son clases, y la más notable de ellas es la clase Ad.smali, por cuyo nombre es fácil adivinar que es la que muestra publicidad.

Podríamos cambiar la lógica de su funcionamiento, pero sería mucho más fácil simplemente eliminar las llamadas a cualquiera de sus métodos desde la propia aplicación. Por tanto, salimos del directorio de marketing y nos dirigimos al directorio de partículas adyacente, y luego a virtualtorch. El archivo MainActivity.smali merece especial atención aquí. Esta es una clase estándar de Android creada por el SDK de Android y instalada como punto de entrada a la aplicación (análoga a la función principal en C). Abra el archivo para editarlo.

En el interior hay un código pequeño (ensamblador local). Es bastante confuso y difícil de leer debido a su naturaleza de bajo nivel, por lo que no lo estudiaremos, simplemente encontraremos todas las referencias a la clase Ad en el código y las comentaremos. Ingresamos la línea “Anuncio” en la búsqueda y llegamos a la línea 25:

Campo de anuncio privado:Lcom/kauf/marketing/Ad;

Aquí se crea un campo de anuncio para almacenar un objeto de clase de anuncio. Comentamos colocando un cartel ### delante de la fila. Seguimos la búsqueda. Línea 423:

Nueva instancia v3, Lcom/kauf/marketing/Ad;

Aquí es donde ocurre la creación del objeto. Comentemos. Continuamos la búsqueda y encontramos en las líneas 433, 435, 466, 468, 738, 740, 800 y 802 llamadas a métodos de la clase Ad. Comentemos. Eso parece ser todo. Ahorrar. Ahora es necesario volver a armar el paquete y verificar su funcionalidad y la presencia de publicidad. Para garantizar la pureza del experimento, devolvemos la línea eliminada de AndroidManifest.xml, ensamblamos el paquete, lo firmamos y lo instalamos.

Nuestro conejillo de indias. Publicidad visible

¡Ups! La publicidad desapareció sólo mientras la aplicación se estaba ejecutando, pero permaneció en el menú principal, que vemos cuando iniciamos el software. Entonces, espere, pero el punto de entrada es la clase MainActivity y el anuncio desapareció mientras se ejecutaba la aplicación, pero permaneció en el menú principal, entonces, ¿el punto de entrada es diferente? Para identificar el verdadero punto de entrada, vuelva a abrir el archivo AndroidManifest.xml. Y sí, contiene las siguientes líneas:

Nos dicen (y, lo que es más importante, a Android) que se debe iniciar una actividad denominada Inicio en respuesta a la generación de una intención (evento) android.intent.action.MAIN de la categoría android.intent.category.LAUNCHER. Este evento se genera cuando toca el ícono de la aplicación en el iniciador, por lo que determina el punto de entrada, es decir, la clase Inicio. Lo más probable es que el programador primero haya escrito una aplicación sin un menú principal, cuyo punto de entrada era la clase estándar MainActivity, y luego agregó una nueva ventana (actividad) que contiene el menú y se describe en la clase Inicio, y la convirtió manualmente en la entrada. punto.

Abra el archivo Start.smali y busque nuevamente la línea “Ad”, encontramos en las líneas 153 y 155 una mención de la clase FirstAd. También está en el código fuente y, a juzgar por el nombre, se encarga de mostrar anuncios en la pantalla principal. Miremos más allá, estamos creando una instancia de la clase FirstAd y una intención que está relacionada con esta instancia en contexto, y luego la etiqueta cond_10, cuya transición condicional se lleva a cabo exactamente antes de crear una instancia de la clase:

If-ne p1, v0, :cond_10 .line 74 nueva instancia v0, Landroid/content/Intent; ... :cond_10

Lo más probable es que el programa calcule de alguna manera aleatoriamente si se debe mostrar publicidad en la pantalla principal y, en caso contrario, salte directamente a cond_10. Bien, simplifiquemos su tarea y reemplacemos la transición condicional por una incondicional:

#si-ne p1, v0, :cond_10 ir a:cond_10

No hay más menciones de FirstAd en el código, por lo que cerramos el archivo y volvemos a ensamblar nuestra antorcha virtual usando apktool. Cópialo en tu teléfono inteligente, instálalo y ejecútalo. Voila, toda la publicidad ha desaparecido, por lo que nos felicitamos a todos.

Resultados

Este artículo es sólo una breve introducción a los métodos para piratear y modificar aplicaciones de Android. Muchos problemas quedaron detrás de escena, como la eliminación de protección, el análisis de código ofuscado, la traducción y reemplazo de recursos de aplicaciones, así como la modificación de aplicaciones escritas con el NDK de Android. Sin embargo, teniendo conocimientos básicos, es sólo cuestión de tiempo descubrirlo todo.




Arriba