Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
7cff071
👣: Crear deb para debian
VictorH028 Apr 13, 2025
a6cbcb7
👣: Crear deb para debian
VictorH028 Apr 13, 2025
d0c9b04
👣: Crear deb para debian
VictorH028 Apr 13, 2025
26fd974
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
65820d3
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
332f5ac
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
e420ee4
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
4cb96e5
👣1.0: Crear deb para debian y termux
VictorH028 Apr 13, 2025
a65ad12
👣1.0: Crear deb para debian y termux
VictorH028 Apr 13, 2025
8f18213
👣: Añadi plugin y actualize algunas tareas
VictorH028 Apr 14, 2025
d91c15a
Merge branch 'REAndroid:master' into master
VictorH028 Apr 19, 2025
202d716
👣: Comparaciones inecesarias con `logger`
VictorH028 Apr 15, 2025
535bf90
👣: Better logic for the deb
VictorH028 Apr 22, 2025
594f861
👣: Better logic for the deb
VictorH028 Apr 22, 2025
46ff58a
👣: Better logic for the deb
VictorH028 Apr 22, 2025
ef710c5
👣: Better logic for the deb
VictorH028 Apr 22, 2025
161bc1a
Merge branch 'REAndroid:master' into master
VictorH028 Apr 29, 2025
99560a2
Merge branch 'REAndroid:master' into master
VictorH028 May 4, 2025
5ea6b48
Merge branch 'REAndroid:master' into master
VictorH028 May 5, 2025
ed4285b
Merge branch 'REAndroid:master' into master
VictorH028 May 9, 2025
a9d97c0
Merge branch 'REAndroid:master' into master
VictorH028 May 17, 2025
d3338ee
Merge branch 'REAndroid:master' into master
VictorH028 Sep 15, 2025
fb944b5
Merge branch 'REAndroid:master' into master
VictorH028 Aug 1, 2026
915c4b7
build: actualizar Gradle a sintaxis moderna y Java 21
VictorH028 Sep 24, 2026
86e9687
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
80908de
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
65ec838
Update Gradle wrapper to version 8.5
VictorH028 Sep 24, 2026
0364b08
Change Gradle build command from betaJar to fatJar
VictorH028 Sep 24, 2026
cbe55b9
Update Gradle wrapper to version 8.5
VictorH028 Sep 24, 2026
1b7aee3
next: commit
VictorH028 Sep 24, 2026
37993b0
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
60edace
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
39420b2
build: update Gradle to modern syntax and Java 21
VictorH028 Sep 24, 2026
5ada7bd
Update Gradle wrapper to version 8.5
VictorH028 Sep 24, 2026
77f8b89
Merge branch 'REAndroid:master' into master
VictorH028 Sep 24, 2026
d1e2f80
Add..
VictorH028 Sep 24, 2026
a654c95
UI
VictorH028 Oct 4, 2026
6627286
UI
VictorH028 Oct 4, 2026
c526bd5
UI
VictorH028 Oct 4, 2026
b95158c
UI
VictorH028 Oct 4, 2026
745ce40
Update README
REAndroid Oct 4, 2026
5621fe6
Update ARSCLib.jar #243
REAndroid Oct 4, 2026
1b17e89
UI
VictorH028 Oct 5, 2026
152cac5
UI
VictorH028 Oct 5, 2026
a612a2c
UI
VictorH028 Oct 5, 2026
dbfe6cf
Update ARSCLib 1.4.1
REAndroid Oct 21, 2026
5d94bc0
Update ARSCLib
REAndroid Oct 24, 2026
eeb4a70
new: v2.0.4
VictorH028 Nov 5, 2026
bea6c47
Update: .....
VictorH028 Nov 6, 2026
df46d24
Update: Build jar
VictorH028 Nov 6, 2026
8d69224
fix: Language support
VictorH028 Nov 6, 2026
f031def
fix: switching to English
VictorH028 Nov 8, 2026
d398e44
Merge branch 'master' of https://github.com/VictorH028/APKEditor
VictorH028 Nov 8, 2026
3638fc2
fix: switching to English
VictorH028 Nov 8, 2026
262de3a
fix: switching to English
VictorH028 Nov 8, 2026
b2c7e4d
👣: Crear deb para debian
VictorH028 Apr 13, 2025
50e9597
👣: Crear deb para debian
VictorH028 Apr 13, 2025
c543e8b
👣: Crear deb para debian
VictorH028 Apr 13, 2025
f6cbb63
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
ad485c4
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
c1d54a0
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
c85b391
👣1.0: Crear deb para debian
VictorH028 Apr 13, 2025
28e20fe
👣1.0: Crear deb para debian y termux
VictorH028 Apr 13, 2025
5533044
👣1.0: Crear deb para debian y termux
VictorH028 Apr 13, 2025
dffa30d
👣: Añadi plugin y actualize algunas tareas
VictorH028 Apr 14, 2025
fa18520
👣: Comparaciones inecesarias con `logger`
VictorH028 Apr 15, 2025
2e82e18
👣: Better logic for the deb
VictorH028 Apr 22, 2025
04ed78c
👣: Better logic for the deb
VictorH028 Apr 22, 2025
a257082
👣: Better logic for the deb
VictorH028 Apr 22, 2025
50e354a
👣: Better logic for the deb
VictorH028 Apr 22, 2025
6ef98fd
build: actualizar Gradle a sintaxis moderna y Java 21
VictorH028 Sep 24, 2026
840a982
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
8152f3b
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
1a9f55c
Update Gradle wrapper to version 8.5
VictorH028 Sep 24, 2026
392e197
Change Gradle build command from betaJar to fatJar
VictorH028 Sep 24, 2026
2f7257b
Update Gradle wrapper to version 8.5
VictorH028 Sep 24, 2026
37ce4c1
next: commit
VictorH028 Sep 24, 2026
9c0a985
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
842a5f3
Update JDK version from 8 to 21 in workflow
VictorH028 Sep 24, 2026
89412ce
build: update Gradle to modern syntax and Java 21
VictorH028 Sep 24, 2026
743c494
Update Gradle wrapper to version 8.5
VictorH028 Sep 24, 2026
445a114
Add..
VictorH028 Sep 24, 2026
d62094c
UI
VictorH028 Oct 4, 2026
298b28c
UI
VictorH028 Oct 4, 2026
d5235cd
UI
VictorH028 Oct 4, 2026
0a26722
UI
VictorH028 Oct 5, 2026
038fd27
UI
VictorH028 Oct 5, 2026
c15eac7
UI
VictorH028 Oct 5, 2026
fcfa162
new: v2.0.4
VictorH028 Nov 5, 2026
8b15edd
Update: .....
VictorH028 Nov 6, 2026
c414d06
Update: Build jar
VictorH028 Nov 6, 2026
1e53e97
fix: Language support
VictorH028 Nov 6, 2026
9db68b6
fix: switching to English
VictorH028 Nov 8, 2026
eefc243
fix: switching to English
VictorH028 Nov 8, 2026
730bc11
fix: switching to English
VictorH028 Nov 8, 2026
7ace57b
fix: overdue commits
VictorH028 Nov 8, 2026
9db9a3b
style: small
VictorH028 Nov 8, 2026
bd1a9b8
Resolviendo conflictos
VictorH028 Nov 8, 2026
f5ee0fd
update the links of README.es.md
yonggamer Nov 8, 2026
34dcc37
fix link
yonggamer Nov 8, 2026
30f8dcb
new: svg
VictorH028 Nov 9, 2026
052f7e8
new:
VictorH028 Nov 9, 2026
02b9975
fix: Build
VictorH028 Nov 9, 2026
e2de7c0
fix: Build
VictorH028 Nov 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions .github/workflows/gradle_build.yml

This file was deleted.

8 changes: 5 additions & 3 deletions .github/workflows/gradle_build_beta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,16 @@ jobs:

steps:
- uses: actions/checkout@v4
- name: Set up JDK 8
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '8'
java-version: '21'
distribution: 'temurin'
- uses: gradle/actions/setup-gradle@v4
with:
gradle-version: '8.5'
- name: Build with Gradle
run: ./gradlew betaJar
run: gradle fatJar --no-daemon
- uses: actions/upload-artifact@v4
with:
name: APKEditor
Expand Down
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
# Project exclude paths
/.gradle/
/build/
/build/classes/java/main/
/.github/
/.github/
Binary file added .img/ui.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .img/ui_last.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

Empty file modified LICENSE
100755 → 100644
Empty file.
614 changes: 74 additions & 540 deletions README.md
100755 → 100644

Large diffs are not rendered by default.

67 changes: 42 additions & 25 deletions build.gradle
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,58 +1,75 @@
plugins {
id 'application'
id 'java'
}

apply plugin: 'java'
group = 'com.reandroid.apkeditor'
version = '1.4.9'

group 'com.reandroid.apkeditor'
version '1.4.9'
application {
mainClass = 'com.reandroid.apkeditor.Main'
}

java {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
// Definir la compatibilidad con Java 21
sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21
}

if (JavaVersion.current().isJava8Compatible()) {
allprojects {
tasks.compileJava {
//options.addStringOption('-Xlint:unchecked', '-quiet')
}
}
}
repositories {
mavenCentral()
}

dependencies {
//implementation("io.github.reandroid:ARSCLib:+")
compile(files("$rootProject.projectDir/libs/ARSCLib.jar"))

// built from: https://github.com/REAndroid/smali-lib
compile(files("$rootProject.projectDir/libs/smali.jar"))

// built from: https://github.com/REAndroid/JCommand
compile(files("$rootProject.projectDir/libs/JCommand.jar"))
implementation(files("$rootProject.projectDir/libs/ARSCLib.jar"))
implementation(files("$rootProject.projectDir/libs/smali.jar"))
implementation(files("$rootProject.projectDir/libs/JCommand.jar"))
}

processResources {
filesMatching('apkeditor.properties') {
expand('version': version)
expand('version': project.version)
}
}

javadoc {
exclude('com/reandroid/test/**')
}

jar {
exclude('com/reandroid/test/**')
duplicatesStrategy = DuplicatesStrategy.FAIL
manifest {
attributes 'Main-Class': application.mainClass.get()
}
}

// Configuración de FatJar compatible con Gradle 8.x
task fatJar(type: Jar) {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
archiveClassifier = 'all'

manifest {
attributes(
'Main-Class': 'com.reandroid.apkeditor.Main'
)
attributes 'Main-Class': application.mainClass.get()
}

from {
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
with jar
}

task guiFatJar(type: Jar) {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
archiveClassifier = 'gui'

manifest {
attributes 'Main-Class': 'com.reandroid.apkeditor.gui.GUIApplication'
}

from sourceSets.main.output
from {
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
}

91 changes: 91 additions & 0 deletions docs/.language/README.es.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<p align="center">
<a href="./README.es.md">Español</a> | <a href="https://github.com/VictorH028/APKEditorFuturistic/blob/master/README.md">English</a>
</p>

<p align="center">
<b>APKEditor Futuristic - Interfaz</b>
</p>

## Descripción

APKEditor Futuristic es una interfaz gráfica moderna que envuelve el motor original de [APKEditor](https://github.com/REAndroid/APKEditor).

## Objetivo final

![ui_last](https://github.com/VictorH028/APKEditorFuturistic/blob/master/.img/ui_last.png)

> [!WARNING]
> En desarrollo.

## Compilación

Jar ejecutable de la interfaz gráfica:

```bash
sh gradlew guiFatJar --offline
```

El jar de la GUI se genera en:

```text
build/libs/APKEditor-1.4.9-gui.jar
```

También existe el fat jar general (CLI + GUI):

```bash
sh gradlew fatJar --offline
```

```text
build/libs/APKEditor-1.4.9-all.jar
```

> Usa `sh gradlew` si `./gradlew` falla con `permission denied`.

## Iniciar la interfaz gráfica

### Opción 1 - Classpath de desarrollo

```bash
sh gradlew compileJava --offline

java -cp 'build/classes/java/main:build/resources/main:libs/*' \
com.reandroid.apkeditor.gui.GUIApplication
```

### Opción 2 - Jar de la GUI

```bash
sh gradlew guiFatJar --offline

java -jar build/libs/APKEditor-1.4.9-gui.jar
```

### Termux con VNC

```bash
cd /data/data/com.termux/files/home/proyecto/APKEditor

export DISPLAY=:0
export XAUTHORITY="$HOME/.Xauthority"

java -cp 'build/classes/java/main:build/resources/main:libs/*' \
com.reandroid.apkeditor.gui.GUIApplication
```

Después abre el visor VNC en `localhost:5900` o en el puerto configurado.

## Uso rápido

1. Abre la GUI.
2. Pulsa el selector de APK o usa `Ctrl+O`.
3. Elige un archivo APK/ZIP.
4. Explora el árbol, abre archivos en el editor y revisa los logs.
5. Usa `F5` o el botón **Descompilar** para generar el proyecto.
6. Usa las vistas **Construir**, **Fusionar**, **Refactorizar** y **Proteger** para ejecutar las operaciones del motor.
7. Cambia el idioma español/inglés desde la topbar o desde **Configuración**.

## Estado

La interfaz actual está implementada con Swing + Java2D. Incluye temas en caliente y cambio de idioma español/inglés. El detalle de módulos, atajos, temas, idioma, operaciones y limitaciones está en [docs/apkeditor-ui.md](docs/apkeditor-ui.md).
Loading