- Qbs Manual
- Module Android.sdk
- Qbs 1.6.0

# Module Android.sdk

The `Android.sdk` module contains the properties and rules to create Android application packages from Java sources, resources and so on.

Normally, you will not use this module directly, but instead work with the AndroidApk item that Qbs provides.

## Android.sdk Properties

These properties are set automatically when creating an Android profile via the `setup-android` tool.

Property | Type | Since | Default | Description
--- | --- | --- | --- | ---
buildToolsVersion | string | 1.4 | undefined | The version of the build tools such as aapt and dx. The `setup-android` tool sets this to the highest version available in the SDK.
ndkDir | string | 1.4 | undefined | The NDK base directory, if an NDK is present.
platform | string | 1.4 | undefined | The versioned platform name (e.g. "android-21"). The `setup-android` tool sets this to the highest version available in the SDK.
sdkDir | string | 1.4 | undefined | The SDK base directory.

## Relevant File Tags

Tag | Auto-tagged File Names | Since | Description
--- | --- | --- | ---
`"android.aidl"` | `*.aidl` | 1.4.0 | This tag is used for Android AIDL files. One Java source file will be generated for each such file.
`"android.assets"` | - | 1.4.0 | This tag is used for Android assets, which are typically located in an `assets/` subdirectory. Using the AndroidApk item takes care of tagging these files for you.
`"android.apk"` | n/a | 1.4.0 | This tag is attached to the output artifact of the rule that creates an APK package. It is the default type of the AndroidApk item.
`"android.manifest"` | `AndroidManifest.xml` | 1.4.0 | This tag is used for the Android manifest. There must be one such file for every Android app.
`"android.resources"` | - | 1.4.0 | This tag is used for Android resources, which are typically located in a `res/` subdirectory. Using the AndroidApk item takes care of tagging these files for you.