libmapbox-maps.so grew ~38% (+18 MB across ABIs) between 11.30.4 and 11.31.1
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 22/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- mobile, mobile-dev, performance
Línea de trabajo
The report compares stripped libmapbox-maps.so sizes inside android-core-ndk27 AARs (11.30.4 vs 11.31.1) and ELF sections, especially .text. Start from the gl-native / NDK27 build configuration used for those artifacts and whether optimization, inlining, or LTO flags changed. Done is a confirmed cause and a path to shrink the library, not an app-side workaround. This is maintainer-level native build work, not a first-issue patch.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Environment
- Android OS version: All (build-time / APK size issue)
- Devices affected: All
- Maps SDK Version: 11.31.1 and later (
com.mapbox.maps:android-ndk27), compared with 11.30.4
Observed behavior and steps to reproduce
After updating from com.mapbox.maps:android-ndk27:11.30.4 to 11.31.1, with no other native changes, our release APK grew by about 20 MB. Almost all of the difference is libmapbox-maps.so from com.mapbox.maps:android-core-ndk27:
| ABI | 11.30.4 | 11.31.1 | Change |
|---|---|---|---|
| arm64-v8a | 12.93 MB | 17.83 MB | +4.90 MB |
| armeabi-v7a | 8.87 MB | 12.19 MB | +3.32 MB |
| x86 | 14.80 MB | 19.36 MB | +4.56 MB |
| x86_64 | 14.28 MB | 19.35 MB | +5.07 MB |
That is about +18 MB in a universal APK, and about +5 MB per device for arm64. The size stays at this level in 11.32.0. libmapbox-common.so (common 24.30.4 to 24.31.1) is unchanged (6.67 MB to 6.64 MB on arm64-v8a).
To reproduce: compare the jni/<abi>/libmapbox-maps.so sizes inside android-core-ndk27-11.30.4.aar and android-core-ndk27-11.31.1.aar.
Expected behavior
The 11.31.0 and 11.31.1 release notes list small features and bug fixes, so we would expect the native library size to stay close to 11.30.4.
Notes / preliminary analysis
Both libraries are stripped, so this is not debug symbols. Comparing ELF section sizes of the arm64-v8a libmapbox-maps.so:
| Section | 11.30.4 | 11.31.1 | Change |
|---|---|---|---|
.text |
8.45 MB | 12.73 MB | +4.28 MB (+51%) |
.gcc_except_table |
0.43 MB | 0.75 MB | +0.33 MB |
.rela.dyn |
0.69 MB | 0.95 MB | +0.26 MB |
.data.rel.ro |
0.24 MB | 0.33 MB | +0.09 MB |
.eh_frame |
1.51 MB | 1.58 MB | +0.07 MB |
.eh_frame_hdr |
0.39 MB | 0.23 MB | -0.16 MB |
Most of the growth is compiled code in .text, with exception tables almost doubling. That looks more like a change in build configuration (optimization level, inlining or LTO settings) than new functionality. Could you confirm whether the gl-native build flags changed in 11.31, and whether the size can be brought back down?
We have only checked the -ndk27 variant, so we don't know whether the default (NDK 23) artifact is affected as well.
- Lenguaje dominante
- Kotlin
- Estrellas
- 578
- Forks
- 163
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mapbox/mapbox-maps-android
-
bug :beetle:
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
mapbox/mapbox-maps-android#2727 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
mapbox/mapbox-maps-android#2733 ·
-
Pins Flicker During Zoom OutAbiertobug :beetle:
Dificultad 4/5 3-5 días Aptitud para principiantes 50/100
mapbox/mapbox-maps-android#2732 ·
-
[R8] Maps and Search SDK consumer rules apply app-wide and significantly restrict optimizationAbiertoauto-triaged bug :beetle:
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
mapbox/mapbox-maps-android#2731 · 4 reacciones ·
-
bug :beetle:
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
mapbox/mapbox-maps-android#2730 ·
Todos los issues de mapbox/mapbox-maps-android
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
rustyrazorblade/easy-db-lab#1003 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
droidconKE/droidconKeKotlin#426 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
MuwMx/YumaPlayer#101 · 1 reacción ·
-
enhancement good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
IBRAHIMDANS/i18nSupportPlus#370 · 1 comentario ·
Los mantenedores suelen responder en 1 día