- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
abiFilters
在 android build.gradle
defaultConfig block 中设置。
我想从发布 buildType 中排除 x86
,但找不到简单的方法来做到这一点
这是build.gradle
:
defaultConfig {
ndk {
abiFilters "armeabi", "x86"
moduleName "cipher_v1"
cFlags "-DRELEASE=1"
if (rootProject.ext.has("testCrack")) {
cFlags += " -DTEST_CRACK"
}
if (project.ext.has("authKey") && project.ext.has("androidId")) {
cFlags += "-DAUTH_KEY=\\\"" + project.ext.authKey + "\\\""
"-DANDROID_ID=\\\"" + project.ext.androidId + "\\\""
}
}
}
buildTypes {
release {
ndk {
abiFilters "armeabi"
}
}
}
这是我得到的:
unzip -l base-release.aar|grep cipher
17752 02-01-1980 00:00 jni/armeabi/libcipher_v1.so
17640 02-01-1980 00:00 jni/x86/libcipher_v1.so
这是我真正想要的:
unzip -l base-release.aar|grep cipher
17752 02-01-1980 00:00 jni/armeabi/libcipher_v1.so
我想在 defautlConfig
block 中保留完整的 abiFilters
并在某些buildType
编辑 1:
是的,在 debug
和 release
block 中删除 defaultConfig
并设置 abiFilters
会起作用。但我的问题是如何利用 defaultConfig
最佳答案
提供命令行选项,例如“no_x86”
将下面添加到您的 app/build.gradle
defaultConfig {
ndk {
...
if (project.hasProperty("no_x86")) {
abiFilters "armeabi"
} else {
abiFilters "armeabi", "x86"
}
...
}
}
通过向命令提供选项 no_x86
,使用下面的命令生成没有 x86 ABI 的 APK。
./gradlew assemble -Pno_x86
但如果您想使用 x86 abi 构建 APK,请不要将选项 no_x86
提供给命令。由于 defaultConfig
是根据您的要求保留完整的 abiFilters。
对于某些buildType,您可以通过输入或不输入-Pno_x86
属性来调用相应的构建命令。例如。 ./gradlew assembleRelease -Pno_x86
关于android - 如何覆盖 buildTypes 中的 defaultConfig abiFilters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53322169/
我想在我的项目中配置第三个 BuildType,它继承另一个 BuildType 的所有配置。 我该怎么做? 最佳答案 只需在构建类型中使用 initWith 属性即可: uitesting {
我有两个 gradle 模块 :app (安卓应用) :data (安卓库):app取决于 :data .我创建了一个额外的 buildType对于两个名为 mock 的模块.当我构建 :app在 m
我创建了如下的自定义 buildType: buildTypes { releasefree.initWith(buildTypes.release) release
我的Android项目具有多种构建类型和productFlavors flavorDimensions "default" productFlavors { favor1
这是我的 build.gradle(Module: app) 的一部分 buildTypes { release { minifyEnabled false p
我正在使用 android 实验性插件 0.4 ( gradle 2.8 ) 并想修改与 buildType 关联的所有任务;在我的案例中进行调试。 目前,我正在使用以下“hack”: tasks.a
enter image description here 我正面临这个问题 Could not find method buildTypes() for arguments [build_3r52yu
我在buildTypes中有四个条目。它工作正常,我可以在linux终端上触发gradle build命令,在项目目录中创建8个apk文件,等等。在android studio中,我可以在构建版本之间
谁能解释buildTypes块如何在Gradle中工作? 据我所知,调试块在 Debug模式下运行,发布块在 Release模式下运行。 但是,如果我运行Gradle脚本,则这两个块都将运行! b
我无法创建使用不同 list 的两种不同构建类型。即使使用--rerun-tasks重新运行gradle并完全删除了构建目录后,apk中包含的AndroidManifest还是不正确的。例如,我运行a
我的项目gradle文件中出现此错误: 'buildTypes' cannot be applied to '(groovy.lang.Closure)' 我目前正在使用Android Studio
我正在使用以下配置: android { // a lot more of definitions... signingConfigs { // For advanced-artefacts,
BuildType 对象(Gradle Android 插件)的这两个属性有什么区别? applicationIdSuffix 和 packageNameSuffix? zipAlign 属性是什么意
我是 Gradle 构建工具的新手。我想在 Android 应用程序中创建常量 OPEN_WEATHER_MAP_API_KEY 但出现以下错误 构建.gradle `apply plugin:
我想通过以下方式区分发布和调试 buildTypes: buildTypes { release { minifyEnabled false signingC
我有三种构建类型,我试图让 staging 构建类型运行,但我收到以下错误: Error: The apk for your currently selected variant (app-stagi
我有一个 Android 应用程序,我想更改调试和其他 buildTypes 的应用程序标签。我没有任何口味! 这是我认为应该有效的设置: -src |-debug |-res
我想设置一个项目来构建两个可以安装在同一设备上的不同 apk - 其中一个是生产 apk,第二个是调试 apk。为此,我在 build.gradle 中定义了: buildTypes {
我有 2 种风格的应用程序,每种都有自己的 google maps (v1) key 用于调试和发布(意味着总共有 4 个 key )。所以我想知道我是否可以根据 buildType 和 produc
决定使用 Gradle 6.5 从 Android gradle plugin 3.5.x 切换到 gradle plugin 4.10 并坚持错误。 这是我的 build.gradle defaul
我是一名优秀的程序员,十分优秀!