久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

Gradle android 為不同的處理器架構構建

Gradle android build for different processor architectures(Gradle android 為不同的處理器架構構建)
本文介紹了Gradle android 為不同的處理器架構構建的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我想使用 Gradle 為 4 個不同的 Android CPU 處理器架構(armeabi armeabi-v7a x86 mips)構建 4 個單獨的 apk.

I want to build 4 separate apks for 4 different Android CPU processor architectures (armeabi armeabi-v7a x86 mips) using Gradle.

我在 libs 文件夾中有為 4 個 CPU 架構構建的原生 OpenCV 庫.

I have native OpenCV libraries built for 4 CPU architectures in the libs folder.

libs
    -armeabi
    -armeabi-v7a
    -x86
    -mips

我希望每個 apk 只包含對應正確 CPU 架構的 OpenCV 庫.

I want to each apk only contains the OpenCV library corresponding to the correct CPU architecture.

當前構建腳本如下:

apply plugin: 'android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':workspace:OpenCV4Android:sdk:java')
}

android {
    compileSdkVersion 11
    buildToolsVersion "18.1.0"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')

        flavorGroups "abi", "version"
        productFlavors {
            x86 {
                flavorGroup "abi"
            }
            arm {
                flavorGroup "abi"
            }
            mips {
                flavorGroup "abi"
            }
        }

    }
}

有人可以幫我解決這個問題嗎?

Can someone help me to resolve this please?

干杯,

推薦答案

從 Android Gradle 插件版本 13 開始,您現在可以使用新的拆分"機制生成單獨的 APK.你可以閱讀它這里.

As of Android Gradle Plugin version 13 you can now generate seperate APK's using the new "split" mechanism. You can read about it here.

放置 .so 文件的默認文件結構是:

The default file structure for placing your .so files is:

src
-main
  -jniLibs
    -armeabi
      -arm.so
    -armeabi-v7a
      -armv7.so
    -x86
      -x86.so
    -mips
      -mips.so

請注意,.so 文件的名稱并不重要,只要它具有 .so 擴展名.

Note that the name of the .so file is unimportant as long as it has the .so extension.

然后在你的 Gradle 構建文件中:

Then in your Gradle build file:

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

// map for the version code
ext.versionCodes = ['armeabi-v7a':1, mips:2, x86:3]

import com.android.build.OutputFile

android.applicationVariants.all { variant ->
    // assign different version code for each output
    variant.outputs.each { output ->
        output.versionCodeOverride =
            project.ext.versionCodes.get(output.getFilter(OutputFile.ABI)) * 1000000 + android.defaultConfig.versionCode
    }
}

請注意,上面 ext.versionCodes 中的版本代碼在很大程度上是無關緊要的,這是為每個 ABI 類型添加唯一的偏移量,因此版本代碼不會沖突.

Note that the version codes above in ext.versionCodes are largely irrelevant, this is here to add a unique offset for each ABI type so version codes do not clash.

這篇關于Gradle android 為不同的處理器架構構建的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

IncompatibleClassChangeError after updating to Android Build Tools 25.1.6 GCM / FCM(更新到 Android Build Tools 25.1.6 GCM/FCM 后出現 IncompatibleClassChangeError)
How to get current flavor in gradle(如何在 gradle 中獲取當前風味)
How to fix quot;unexpected element lt;queriesgt; found in lt;manifestgt;quot; error?(如何修復“意外元素lt;查詢gt;在“清單中找到錯誤?)
Multi flavor app based on multi flavor library in Android Gradle(基于 Android Gradle 中多風味庫的多風味應用)
Android dependency has different version for the compile and runtime(Android 依賴在編譯和運行時有不同的版本)
Transitive dependencies for local aar library(本地 aar 庫的傳遞依賴)
主站蜘蛛池模板: 欧美日韩一卡二卡 | 国产欧美一区二区在线观看 | 亚洲成人免费视频 | 国产精品毛片一区二区三区 | 在线欧美一区二区 | 日韩一区二区三区在线视频 | 久久久亚洲 | 99热精品国产 | 久久久久国产一区二区三区四区 | 91久久久久久久久久久久久 | 欧洲成人免费视频 | 欧美综合一区二区 | 成人在线视频观看 | 九九亚洲 | 欧美日韩在线观看一区 | 97久久久 | 一区二区三区不卡视频 | 黄色欧美视频 | 成人在线播放网站 | 欧美一区二区三区久久精品 | 久久精品视频播放 | 国产日韩欧美电影 | 国产小视频在线 | 在线不卡一区 | 国产一级毛片视频 | 欧美午夜精品理论片a级按摩 | 亚洲欧洲中文日韩 | 三级成人片 | 久久久久免费精品国产小说色大师 | 一级免费黄色 | 欧美久久国产 | 一区二区日本 | 免费精品一区 | 啪啪精品| 午夜天堂精品久久久久 | 成年网站在线观看 | 日韩欧美在线一区 | 在线中文字幕视频 | 日本精品久久久一区二区三区 | 日韩二区 | 久久久精品视频一区二区三区 |