Android.sdk

提供构建 Android 包的支持。 更多...

Qbs 1.4

属性

详细说明

Android.sdk 模块包含从 Java 源代码、资源等创建 Android 应用程序包所需的属性和规则。它通常通过声明一个 Application 产品间接引入。

相关文件标签

标签自动标记的文件名描述
"android.aidl"*.aidl1.4.0附加到 Android AIDL 文件。对于此类文件,将为每个文件生成一个 Java 源代码文件。
"android.assets"-1.4.0附加到 Android 资源,这些资源通常位于 assets/ 子目录中。如果启用了 automaticSources 属性,则自动标记这些文件。
"android.manifest"AndroidManifest.xml1.4.0附加到 Android 清单。每个 Android 应用都必须有一个此类文件。
"android.resources"-1.4.0附加到 Android 资源,这些资源通常位于 res/ 子目录中。如果启用了 automaticSources 属性,则自动标记这些文件。

属性说明

[since Qbs 1.17] aaptName : string

aapt 二进制文件的名。允许的选项:"aapt" 和 "aapt2"。

默认:"aapt2"

此属性是在 Qbs 1.17 中引入的。


aidlSearchPaths : stringList

为传递给aidl工具的导入语句搜索路径,使用-I选项。


apkBaseName : string

要构建的APK文件的基名,即不带".apk"扩展名的文件名。

默认值: packageName


assetsDir : path

各产品中Android资源的基目录。

注意:Android要求此目录的文件名始终为"assets"

默认值: 产品源目录中的"src/main/assets"


automaticSources : bool

如果为true,则Java源代码以及Android资源、资产和清单文件将通过通配符自动包含在相应的产品中。如果您想手动指定这些文件,请将此属性设置为false

默认值: true


buildToolsVersion : string

构建工具(如aaptdx)的版本。

默认值: SDK中可用的最高构建工具版本


[自Qbs 1.20起]dexCompilerName : string

DEX编译器二进制文件名。允许的选项:"dx"和"d8"。

默认值: "d8"

该属性是在Qbs 1.20中引入的。


[自Qbs 1.10起]embedJar : bool

如果为true,则如果依赖项是JAR文件,它的类和依赖项的类(如果对它们也设置了embedJar)将通过.dex递归处理并包含在最终APK中。

默认值: true

该属性是在Qbs 1.10中引入的。


manifestFile : string

Android清单文件的文件路径。此属性仅在启用了automaticSources时相关。

注意:Android要求文件名始终为"AndroidManifest.xml"。

默认值: 产品源目录中的"src/main/AndroidManifest.xml"


[自Qbs 1.17起]minimumVersion : string

应用程序运行所需的最小API级别。

默认值: "21"

此属性是在 Qbs 1.17 中引入的。


ndkDir : string

如果有NDK,则为NDK基目录。

默认值: 根据标准搜索路径自动确定


packageName : string

相应产品的包名。清单文件中的package属性将自动设置为该值。

默认值: name


[自Qbs 1.17起]packageType : string

包的类型。允许的选项:"apk"和"aab"。类型"apk"生成可运行的包,而类型"aab"生成Google Play的包。

默认值: "apk"

此属性是在 Qbs 1.17 中引入的。


platform : string

版本化平台名(例如,"android-21")。

默认值: SDK中可用的最高构建工具版本


resourcesDir : path

各产品中Android资源的基目录。

注意:Android要求此目录的文件名始终为"res"

默认值: 产品源目录中的"src/main/res"


sdkDir : string

SDK基目录。

默认值: 根据标准搜索路径自动确定


sourcesDir : path

Java 源文件的根目录。只有当 automaticSources 功能启用时,此属性才有意义。

默认值:产品源目录中的 "src/main/java"


[自 Qbs 1.17 开始] targetVersion : 字符串

应用程序的目标 API 级别。

默认值:platformVersion

此属性是在 Qbs 1.17 中引入的。


versionCode : 字符串

相应产品的 Android Manifest 版本代码。如果未定义,manifest 文件中的 android:versionCode 属性将设置为此值。

以下示例中,我们为 android:versionCode 提供一个针对特定架构的值

// ...
property int _version: 1
property int _patchVersion: 0
Android.sdk.versionCode: {
    switch (Android.ndk.abi) {
    case "armeabi-v7a":
        return 132000000 | _version * 10 + _patchVersion;
    case "arm64-v8a":
        return 164000000 | _version * 10 + _patchVersion;
    case "x86":
        return 232000000 | _version * 10 + _patchVersion;
    case "x86_64":
        return 264000000 | _version * 10 + _patchVersion;
    }
    throw "Unknown architecture";
}

默认值:undefined


versionName : 字符串

相应产品的 Android Manifest 版本名称。如果未定义,manifest 文件中的 android:versionName 属性将设置为此值。

默认值:undefined


©2023 The Qt Company Ltd. 本文档中包含的贡献是各自所有者的版权。本提供的内容是根据由自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 及其相关商标是芬兰及其他国家和地区 The Qt Company Ltd. 的商标。所有其他商标均为各自所有者的财产。