Skip to main content


Learn how can you build local code changes on Dashwave

Dw build

It builds the code (utilising distributed cache by default), installs the apk to the emulator hosted on cloud and returns an emulator link for user's preview.

dw build [flags]

-a, --apk string //The path for the build apk, e.g. app/build/outputs/apk/debug/app-debug.apk
-c, --cmd string //The base command for gradle build, e.g. app:assembleDebug
-h, --help //help for build
--clean //To run a clean build
--no-cache //To disable cache utilisation
--debug //To list debug logs
-r //To manually specify the closest remote parent branch to your active local branch

Dw build flags

For building custom build modules and variants other than default build configurations, you can use the following flags with dw build command

-a / —apk string

The -a flag defines the apk path for the build apk relative to the project’s root

If you’re facing errors like “APK Installed Failed” or “APK Not Found” but the build is successful, it maybe because the Dashwave’s emulator is not able to detect the APK in the default build path. Try passing the APK path to resolve installation errors

dw build -a <apk-path>
//example - app/build/outputs/apk/debug/app-debug.apk

-c / —cmd string

The -c flag defines the base gradle build commands like build module and variant.

dw build -c <build-command>
//example - app:assembleDebug

—clean bool

The —clean flag can be used to run a clean gradle build.

—debug bool

The --debug flag logs debug info for dw-cli and would help to troubleshoot issues with firing builds

-r / —remote-base-branch string

The -r or --remote-base-branch flag can be used to specify the base (parent) branch to your local active branch and which exists remotely (exists on GitHub). It’s best to specify the remote parent branch which is nearest to your local HEAD. dw-cli autodetects this branch when not provided. The remote-base-branch enables quick synchronisation of local code with builder code when each build is fired.

Build Configurations

After the project has been successfully configured with the SCM (Source Code Management) repository, Dashwave efficiently identifies the project's default module (typically the main module) and its corresponding variant. It then establishes these as the default configuration for the build process.


How to change build configuration?

The project's configuration can be conveniently modified at any time on the Project Settings page. Once updated, Dashwave will utilise this new configuration for all future builds.



If the selected variant requires signing, please refer to the following instructions : Signed build on dashwave