2015-09-01 21 views
7

Uygulamamda x86, armeabi-v7a ve mips için yerel kodu olan (her biri ~ 2.7Mb) render kağıdını kullanıyorum. Ayrıca, mimik mimarisinin sadece birkaç cihazı olduğunu okudum. Bu yüzden, uygulamamı iki APK’da paketlemek istiyorum: evrensel (örneğin x86 ve armeabi-v7a) ve mips. Bölünmüş bölümün, mips için apk oluşturmaya yardımcı olduğunu buldum, ancak evrensel apk yine de mips mimarisini içeriyor. Bu yüzden sorum, abi'nin sonuç apk'sinden nasıl çıkarılacağıdır?abi'den abi'yi durdur

Teşekkür

cevap

7

Sen MIPS ama her şeyi içeren bir başka lezzet kurma deneyebilirsiniz.

apply from: "../commonHeader.gradle" 
buildscript { apply from: "../commonBuildScript.gradle", to: buildscript } 
apply plugin: 'com.android.application' 
android { 
    compileSdkVersion 21 
    buildToolsVersion = rootProject.ext.buildToolsVersion 
    productFlavors { 
     x86 { 
      ndk { 
       abiFilter "x86" 
      } 
     } 
     arm { 
      ndk { 
       abiFilters "armeabi-v7a", "armeabi" 
      } 
     } 
     mips { 
      ndk { 
       abiFilter "mips" 
      } 
     } 
    } 
} 

Temelde onların arm lezzet benziyor yaygın iki ARM Abis içerir: Android Gradle eklentisi kaynaklarının bir parçası olan test projeleri birinden build.gradle dosyasında bunu buldum. Muhtemelen x86 ve armeabi-v7a'u içeren "evrensel" bir lezzet tanımlayabilirsiniz.

splits { 
    abi { 
     enable true 
     reset() 
     include 'x86', 'armeabi-v7a', 'mips' 
    } 
} 

Sen ona benzer bir şey kullanmak ve oradan mips düşmesi mümkün olabilir:

Onlar, build.gradle içeren, başka test project var.

+0

Şu an ndk {} bölümü kullanımdan kaldırılmıştır. Şimdi bunu kullanmanın başka bir yolu var mı? – Vetalll

+0

Bu, ürün aromalarını kullanmadan da yapılabilir, ndk bölümünü, gerektiği şekilde debug veya release bölümünüze eklersiniz. Http://stackoverflow.com/questions/30946365/how-to-import-only-selected-native-library-abis-from-aar – sham

+0

@Vetalll, android.useDeprecatedNdk = gradle.properties öğesinde kullanabilirsiniz. Ancak emin değilim – Killer