2016-02-22 4 views
8

Uso le opzioni di impacchettamento per escludere alcune librerie. È possibile avere opzioni di imballaggio basate sul sapore del prodotto. Per esempio -opzioni di imballaggio basate sull'aroma del prodotto in gradle

android { 
    productFlavors { 
     flavorDimensions 'models' 
      S2 { 
       flavorDimension 'models' 
       minSdkVersion 22 
       .... 
      } 
      S6 { 
       flavorDimension 'models' 
       minsdkversion 22 
       .... 
      } 
     } 


    packagingOptions { 
     exclude 'lib/armeabi/libs2.so' 
     exclude 'lib/arm64-v8a/libs6.so 
    } 
} 

Ora, nel codice di cui sopra, voglio escludere solo 'lib/armeabi/libs2.so' in apk generato per s6 sapore e desidera escludere solo 'lib/arm64-v8a/libs6.so' in apk generato per s2 sapore

Come possiamo raggiungere questo obiettivo.

risposta

8

Ho riscontrato lo stesso problema, quindi ho sviluppato un plug-in gradle per risolvere questo problema. È possibile check it(android-soexcluder) out here

E 'super facile da usare:

soexcluder { 
    s2 { 
     exclude 'lib/arm64-v8a/libs6.so' 
    } 

    s6 { 
     exclude 'lib/armeabi/libs2.so' 
    } 
} 

Oltre a questo, c'è anche un progetto di esempio all'interno del repository