guia y android: el proyecto Gradle vuelve a como estaba; el icono en android/icono
La guia dice que el resto de android/ queda sin tocar. El icono adaptativo pasa a android/icono/, de donde lo copia sobre_oficial.sh. En la guia, mobile_settings.js, android/icono y por que la APK lleva una huella del codigo en el versionName.
|
|
@ -90,6 +90,10 @@ Aquí se puede hacer lo que haga falta.
|
|||
- `src/client/assets/themes/Acampada.css` y `styles/hive_acampada.css`: el skin
|
||||
Acampada.
|
||||
- `src/views/mobile_ui.js`: lo que se enchufa en vistas del dev.
|
||||
- `src/views/mobile_settings.js`: los seis accesos de arriba de Ajustes (identidad,
|
||||
perfil, portada, colores, comunidad y saludo) y los colores. Los colores se guardan
|
||||
en la config (`mobileColors`) y salen en `/mobile-colors.css`, la última hoja; son
|
||||
las variables `--a26-*` de Acampada, así que solo valen con ese skin.
|
||||
- `src/views/mobile_modules_view.js`, `identities_view.js`: pantallas propias.
|
||||
- `src/views/hive_views.js`: lanzador y barras de arriba y abajo.
|
||||
- `src/views/mobile_icons.js`: los iconos.
|
||||
|
|
@ -101,6 +105,9 @@ Aquí se puede hacer lo que haga falta.
|
|||
- `src/client/assets/images/ux-*.svg`: nuestras imágenes.
|
||||
- `android/scripts/sobre_oficial.sh`: monta la APK sobre la oficial del dev. El resto
|
||||
de `android/` (el proyecto Gradle propio) queda como estaba, sin uso.
|
||||
- `android/icono/`: el icono adaptativo (la isla del logo de Oasis sobre su fondo).
|
||||
`sobre_oficial.sh` lo copia encima del de la APK oficial, que solo trae un PNG
|
||||
cuadrado y el lanzador lo encoge dentro de un círculo blanco.
|
||||
|
||||
|
||||
## Cómo hacer cada cosa
|
||||
|
|
@ -198,8 +205,21 @@ Cosas que pasan:
|
|||
- Al arrancar desaparecen `src/configs/banking-eco-history.json` y
|
||||
`fediverse-accounts.json`. Antes del commit, `git checkout -- src/configs/`.
|
||||
|
||||
En el emulador (`Pixel_9_API_36` de Android Studio), la APK de depuración deja
|
||||
inspeccionar la WebView desde `chrome://inspect`.
|
||||
En el emulador, la APK de depuración deja inspeccionar la WebView desde
|
||||
`chrome://inspect`. El `Pixel_9_API_36` de Android Studio está casi lleno; para
|
||||
instalar la APK va mejor `Oasis_Pruebas` (12 GB, puerto 5556).
|
||||
|
||||
|
||||
## La APK y la extracción del backend
|
||||
|
||||
La app del dev lleva nuestro código dentro de `assets/nodejs-project.zip` y al abrirse
|
||||
lo descomprime en su carpeta de datos. Solo lo vuelve a descomprimir si cambia
|
||||
`versionName.versionCode` (lo guarda en `nodejs-project/.version`). Si no cambia,
|
||||
arranca con el código de la vez anterior aunque la APK sea nueva, y parece que se han
|
||||
perdido los cambios (el CSS, por ejemplo). Por eso `sobre_oficial.sh` pone en el
|
||||
`versionName` una huella del código (`1.3.3-hacklab.<huella>`): cada APK distinta se
|
||||
descomprime de nuevo. La config de cada cual (`src/configs`) se guarda aparte y se
|
||||
conserva.
|
||||
|
||||
|
||||
## Lo que todavía está mal
|
||||
|
|
|
|||
12
android/app/src/main/res/drawable/ic_launcher_foreground.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Hexagono, el mismo motivo que la rejilla de navegacion de la interfaz -->
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp" android:height="108dp"
|
||||
android:viewportWidth="108" android:viewportHeight="108">
|
||||
<path
|
||||
android:pathData="M54,28 L74,40 L74,64 L54,76 L34,64 L34,40 Z"
|
||||
android:strokeColor="#FFB400" android:strokeWidth="5" android:fillColor="#00000000"/>
|
||||
<path
|
||||
android:pathData="M54,44 L63,49 L63,59 L54,64 L45,59 L45,49 Z"
|
||||
android:fillColor="#FFB400"/>
|
||||
</vector>
|
||||
|
|
@ -1,7 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- el logo de Oasis (la isla), el mismo que la app oficial; el fondo llena la forma
|
||||
que ponga el lanzador (circulo, gota...) en vez de dejar un cuadrado dentro -->
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@drawable/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
</adaptive-icon>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- el logo de Oasis (la isla), el mismo que la app oficial; el fondo llena la forma
|
||||
que ponga el lanzador (circulo, gota...) en vez de dejar un cuadrado dentro -->
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@drawable/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||
</adaptive-icon>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 61 KiB |
|
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<color name="ic_launcher_background">#121212</color>
|
||||
</resources>
|
||||
7
android/icono/mipmap-anydpi-v26/ic_launcher.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- el logo de Oasis (la isla), el mismo que la app oficial; el fondo llena la forma
|
||||
que ponga el lanzador (circulo, gota...) en vez de dejar un cuadrado dentro -->
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@drawable/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
</adaptive-icon>
|
||||
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 134 KiB |
|
|
@ -97,9 +97,9 @@ grep -rl "\"$PKG_DEV\.[A-Z_]*\"" "$DEC"/smali* | xargs -r sed -i -E "s|\"$PKG_DE
|
|||
|
||||
# icono: el logo de la oficial, pero adaptativo. La oficial solo trae el PNG cuadrado
|
||||
# y en Android 8+ el lanzador lo encoge dentro de un circulo blanco; con la capa de
|
||||
# fondo y la de delante (app/src/main/res) la isla llena la forma del lanzador
|
||||
# fondo y la de delante (android/icono) la isla llena la forma del lanzador
|
||||
say "icono adaptativo"
|
||||
RES="$HERE/app/src/main/res"
|
||||
RES="$HERE/icono"
|
||||
mkdir -p "$DEC/res/mipmap-anydpi-v26" "$DEC/res/drawable"
|
||||
cp "$RES/mipmap-anydpi-v26/ic_launcher.xml" "$DEC/res/mipmap-anydpi-v26/"
|
||||
cp "$RES/drawable/ic_launcher_background.xml" "$DEC/res/drawable/"
|
||||
|
|
|
|||