Servicios Cómo trabajo Soluciones Blog Herramientas Contacto Hablemos de tu proyecto

Cómo solucionar el problema de Page Size 16 KB con la librería Rive en Flutter

Logo yanquirm.dev
Publicado el
Cómo solucionar el problema de Page Size 16 KB con la librería Rive en Flutter

La librería Rive utiliza código nativo, lo que significa que debe estar alineada a 16 KB para evitar problemas de compatibilidad en Android. Sin embargo, algunas bibliotecas no cumplen con esta alineación, lo que puede impedir que toda tu aplicación esté correctamente alineada.

Bibliotecas que presentan incompatibilidad con la alineación de 16 KB:

base/lib/arm64-v8a/librive_text.so

base/lib/x86_64/librive_text.so

Google Console: No compatible con 16 kB
Google Console: No compatible con 16 kB

Aunque alinees el resto de tu aplicación a 16 KB, si Rive no está alineada, la alineación global de tu app no será efectiva.

En este artículo te explico cómo resolver este problema paso a paso.

Paso 1: Seguir la guía de compatibilidad de 16 KB en Flutter

Antes de comenzar, asegúrate de haber completado todos los pasos del siguiente artículo: Cómo solucionar el problema de compatibilidad de 16 KB en Flutter

Deberías haber hecho lo siguiente:

Establecer una relación adecuada entre el Plugin de Gradle para Android (AGP) y Gradle en Flutter, utilizando al menos la versión AGP 8.5.1 o superior.

Tener instalada una versión del NDK R28 o superior

Paso 2: Actualizar Rive a la última versión

Asegúrate de tener la versión más reciente de Rive instalada en tu proyecto.

Consulta aquí la última versión de la librería de rive: https://pub.dev/packages/rive/versions

Librería Rive
Librería Rive

Paso 3: Verificar la versión del NDK en tu proyecto

Necesitamos saber qué versión del NDK estás utilizando. Puedes encontrarla en tu archivo build.gradle

android/app/build.gradle
android/app/build.gradle

Por ejemplo, en mi caso tengo la siguiente versión: ndkVersion "29.0.14033849"

Paso 4: Configurar gradle.properties

Agrega las siguientes líneas en tu archivo gradle.properties:


rive.ndk.version=29.0.14033849
android.ndk.suppressMinSdkVersionError=21
    
android/gradle.properties
android/gradle.properties

En rive.ndk.version, asegúrate de usar la misma versión del NDK que identificaste en el paso anterior.

Paso 5: Limpiar y reconstruir el proyecto

Elimina archivos temporales y cachés:


flutter clean
    

Actualiza todas las dependencias a sus versiones más recientes permitidas según tu pubspec.yaml:


flutter pub upgrade
    

Compila tu aplicación en modo release en formato AAB (Android App Bundle):


flutter build appbundle --release
    

Paso 6: Subir la app al market y verificar

Sube tu aplicación a Google Play Console y revisa los detalles de la compilación para confirmar que todo esté correctamente alineado a 16 KB.

Resultado final Google Play Console 16 kB
Resultado final Google Play Console 16 kB

Conclusión

Siguiendo estos pasos aseguras que la librería Rive y toda tu aplicación estén correctamente alineadas a 16 KB, cumpliendo con los requisitos de compatibilidad de Page Size 16 KB para Android. Esto puede evitar problemas en producción y mejorar la estabilidad de tu aplicación.