Android Studio crear una variante de construcción / tipo excluyendo jniLibs?

Tengo una aplicación de Android que utiliza una biblioteca nativa JNI. Lo puse en app/src/main/jniLibs/armeabi-v7a sin ninguna configuración de gradle y Android studio felizmente lo agrupa en el APK.

Tengo un requisito en el que todas las bibliotecas nativas no pueden ser agrupadas con una determinada distribución. ¿Es posible crear una variante de construcción o tipo de compilación que simplemente excluye todas las bibliotecas nativas (tal vez incluso por nombre .so ).

El hecho de que la biblioteca nativa falta en esta distribución no importa porque no se usa. La alternativa es quitar físicamente los archivos, ejecutar la compilación, ponerlos de nuevo. Sin embargo, esto es doloroso y propenso a errores.

De su build.gradle , podemos ser capaces de saber qué se debe hacer con precisión.

He utilizado productFlavours , combinado con flavorDimensions para implementar compilaciones que pueden o no incluir bibliotecas jni.

De lo que he entendido, la esencia de ello es: productFlavors permiten tener n variantes de x, y … tipo, la adición de flavorDimensions le permitiría tener n variantes de tipo xy.

P.ej. Dentro de build.gradle ,

  flavorDimensions "abi", "version" //this is what can help you build with/w/o jni libraries productFlavors { devel { flavorDimension "abi" //keep a dimension common with arm, armv7 applicationId "com.packagename.dev" } prod { flavorDimension "version" // this would be your build w/o the ndk support then applicationId "com.packageName" } armv7 { ndk { flavorDimension "abi" abiFilter "armeabi-v7a" } } arm { ndk { flavorDimension "abi" abiFilter "armeabi" } } } 

Como puede ver, tendrá múltiples variantes de construcción, sabores de producto dependiendo de flavorDimension .

prod sabor sería una variante de construcción o tipo de construcción que simplemente excluye todas las bibliotecas nativas

Fuentes de temas ndk, jniLibs, buildFlavours …:
– Dominando "Flavors de productos" en Android
– ndk-con-android-estudio
– configuración multi sabor

  • GoogleMap dentro de un fragmento en un ViewPager, guarda todos los eventos de toque en GoogleMap
  • ¿Cómo instanciar el servicio android con un constructor?
  • Custom ViewPager para permitir que el control GoogleMap infantil se desplace horizontalmente
  • Cómo ejecutar la antigua aplicación java en Android
  • Cómo abrir PDF en android utilizando pdfview
  • No se puede reloginar con las credenciales de Facebook después de cerrar la sesión
  • Restlet en Android - Problemas con la serialización
  • DoInBackground () error en facebook api en android studio
  • Cómo implementar HttpRequestRetryHandler con Exponential Backoff?
  • Analizar archivo xml utilizando java para - aplicación basada en android
  • Android Studio, Java 8 y Función
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.