elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Comunicaciones
| |-+  Dispositivos Móviles (PDA's, Smartphones, Tablets)
| | |-+  Android
| | | |-+  Crear APKs en Termux
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Crear APKs en Termux  (Leído 5,387 veces)
@XSStringManolo
Hacker/Programador
Colaborador
***
Desconectado Desconectado

Mensajes: 2.397


Turn off the red ligth


Ver Perfil WWW
Crear APKs en Termux
« en: 31 Marzo 2021, 04:18 am »

Crear APKs en Termux
Siempre he querido programar apks (el .exe de android) directamente en Android. Tras varias búsquedas a lo largo del tiempo encontré una forma de crear apks usando comandos. Tanto Java como Kotlin son lenguajes que no me entusiasman precisamente asique he desarrollado un script en javascript y un par de repos para poder construir la apk a partir de una url o una carpeta con archivos html, css, js y demás de tal forma que no tengas que tocar ni una sola linea de código de java, kotlin, xml, etc. No es nada complejo, solo tienes que correr 2 comandos.

Instalación
Mi script utiliza unos cuantos paquetes de Termux:
  Quickjs
  Git
  Aapt
  Apksigner
  Dx
  Ecj
  Curl
  buildAPKs

Hice un commando para que simplemente lo copies y pegues, te deja todo listo. Si acabas de descargarte termux, corre termux-setup-storage antes de nada. Si ya tenías acceso a la carpeta storage no hace falta.

Aquí el comando:
Código:
yes | pkg install quickjs git aapt apksigner dx ecj curl; curl -O https://raw.githubusercontent.com/BuildAPKs/buildAPKs/master/setup.buildAPKs.bash && yes | bash setup.buildAPKs.bash && cp ~/buildAPKs/scripts/bash/build/build.one.bash ~/../usr/bin/ && chmod +775 ~/../usr/bin/build.one.bash; git clone https://github.com/StringManolo/APKGenerator && cd APKGenerator
La instalación va a crear un par de apks para comprobar que todo funciona. Si te pide permisos para poder levantar termux en segundo plano, te recomiendo aceptarlo ya que te puede ser útil en el futuro cuando hagas o corras algún programa que lo necesita. Cuando finalice la instalación ya podrás crear tu app de Android utilizando APKGenerator

Creando la apk
El método de creación es muy sencillo. Tienes 2 comandos para elegir la fuente que se utilizará para generar la app, desde una url o desde una carpeta con tu index.html, estilos.css, codigo.js, etc.
Para crear desde una url, corre el comando
Código:
qjs --std APKGenerator.js -u https://example.com -n com.example.miApp -t Example
Para crear desde carpeta pon
Código:
qjs --std APKGenerator.js -a myAssets -n com.example.miApp -t Example
En este caso se usará la carpeta myAssets que ya se descargó con un index.html, un archivo css y uno javascript para que no tengas que crearlos a mano en caso de que vayas a programar una web de 0. El único requisito es que el archivo se llame index.html.
La única diferencia entre ambos comandos es el primer agumento, que indica si usar una url o una carpeta.

El argumento -n es el nombre del paquete. Es una convención usar un dominio si tienes uno. Esto sirve para que Android sepa diferenciar entre apps que se llamen igual. Puedes poner el nombre que quieras en caso de no tener un dominio.

El argumento -t es el título de la app. Será el nombre que vea el usuario al instalar la app.

Creando desde url
Cuando creas la apk desde una url, se crea un navegador sin barra de direcciones (webview) que va a visitar esa url al abrirla. Todas las peticiones realizadas por el webview incluyen la cabecera HTTP X-Request-With: nombre.del.paquete asique puedes utilizar esta información para servir una versión especial de tu sitio web cuando se te solicite al servidor la web con esta cabecera. Obviamente necesitas internet para que funciones la app. En futuras versiones añadiré caché al webview y un script para cachear tu sitio, así podrás cargar tu sitio web sin conexión a internet.

Creando desde carpeta
Cuando creas desde carpeta esta es añadida a la apk por lo que funciona totalmente offline. Tendrás que manejar tu las actualizaciones de la app para que el usuario pueda actualizar la web. También puedes añadir un script online a la web para encargarte de ello. Recomendado también que utilices la push notifications api de javascript si provees otra forma de actualizarla.

Cambiando archivos de la apk
Cuando realices cualquier tipo de cambio tendrás que generar una nueva apk. Para ello ve a la carpeta de tu proyecto por ejemplo com.example.miApp/src/main y corre el comando build.one.bash
La apk generada se incluye en la carpeta del proyecto (para debug con herramientas si lo necesitas) y en la carpeta Download/builtAPKs para instalar/distribuir. Puedes visitar el repositorio del proyecto en github si desear ver el código, reportar algún fallo, solicitar alguna característica o contribuir en el proyecto. APKGenerator


« Última modificación: 31 Marzo 2021, 04:24 am por @XSStringManolo » En línea

Mi perfil de patrocinadores de GitHub está activo! Puedes patrocinarme para apoyar mi trabajo de código abierto 💖

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Hay sitios donde bajar APKs seguras, sin virus?
Android
pepemanu1 1 2,328 Último mensaje 5 Julio 2017, 23:10 pm
por engel lex
Fortnite para Android: APKs falsos en YouTube con malware o estafas
Noticias
wolfbcn 0 1,129 Último mensaje 4 Junio 2018, 21:22 pm
por wolfbcn
AYUDA EN TERMUX
Hacking
HYDRAX 2 6,048 Último mensaje 12 Junio 2022, 07:48 am
por Lasombra
php+posgresql en Termux funcion pg_connect()
Desarrollo Web
yhamelr80 0 1,880 Último mensaje 22 Agosto 2021, 22:14 pm
por yhamelr80
Error de repositorio en Termux
Android
Master30702 3 12,477 Último mensaje 12 Junio 2022, 08:13 am
por Lasombra
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines