mill.androidlib

package mill.androidlib

Experimental toolchain for building Android app APKs using Mill's AndroidAppModule and AndroidAppKotlinModule, or Android modules via AndroidLibModule and AndroidAppKotlinModule

Attributes

Members list

Type members

Classlikes

A Trait for Android App Bundle Creation

A Trait for Android App Bundle Creation

Attributes

Source
AndroidAppBundle.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all

Trait for building Android applications using the Mill build tool.

Trait for building Android applications using the Mill build tool.

This trait defines all the necessary steps for building an Android app from Kotlin sources, integrating both Android-specific tasks and generic Kotlin tasks by extending the KotlinModule (for standard Kotlin tasks) and AndroidAppModule (for Android Application Workflow Process).

It provides a structured way to handle various steps in the Android app build process, including compiling Kotlin sources, creating DEX files, generating resources, packaging APKs, optimizing, and signing APKs.

Android Studio Documentation

Attributes

Source
AndroidAppKotlinModule.scala
Supertypes
trait KotlinModule
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
Self type

Trait for building Android applications using the Mill build tool.

Trait for building Android applications using the Mill build tool.

This trait defines all the necessary steps for building an Android app from Java sources, integrating both Android-specific tasks and generic Java tasks by extending the AndroidSdkModule (for Android SDK interactions) and JavaModule (for standard Java tasks).

It provides a structured way to handle various steps in the Android app build process, including compiling Java sources, creating DEX files, generating resources, packaging APKs, optimizing, and signing APKs.

Android Studio Documentation

Attributes

Source
AndroidAppModule.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
Self type

Generates a BuildConfig.java file for Android applications. This is a basic implementation of AGP's build config feature!

Generates a BuildConfig.java file for Android applications. This is a basic implementation of AGP's build config feature!

Attributes

Source
AndroidBuildConfig.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
case class AndroidBuildTypeSettings(isMinifyEnabled: Boolean, isShrinkEnabled: Boolean, enableDesugaring: Boolean, proguardFiles: ProguardFiles)

Build type settings for various packaging configurations. See also https://developer.android.com/build/build-variants#build-types

Build type settings for various packaging configurations. See also https://developer.android.com/build/build-variants#build-types

Useful for getting different packaging strategies for code shrinking and supporting build variants

Attributes

Companion
object
Source
AndroidBuildTypeSettings.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AndroidBuildTypeSettings.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Source
AndroidLibModule.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
object AndroidLintReportFormat extends Enumeration

Enumeration for Android Lint report formats, providing predefined formats with corresponding flags and file extensions. Includes utility methods for implicit conversions, serialization, and retrieving all supported formats.

Enumeration for Android Lint report formats, providing predefined formats with corresponding flags and file extensions. Includes utility methods for implicit conversions, serialization, and retrieving all supported formats.

Attributes

Source
AndroidAppModule.scala
Supertypes
class Enumeration
trait Serializable
class Object
trait Matchable
class Any
Self type
case class AndroidModuleGeneratedDexVariants(androidDebugDex: PathRef, androidReleaseDex: PathRef, mainDexListOutput: PathRef)

Attributes

Companion
object
Source
AndroidModuleGeneratedDexVariants.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AndroidModuleGeneratedDexVariants.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Source
AndroidNativeAppModule.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
case class AndroidPackageableExtraFile(source: PathRef, destination: RelPath)

Attributes

Companion
object
Source
AndroidPackageableExtraFile.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Source
AndroidPackageableExtraFile.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Attributes

Source
AndroidR8AppModule.scala
Supertypes
trait JavaModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
trait AndroidSdkModule extends Module

Trait for managing the Android SDK in a Mill build system.

Trait for managing the Android SDK in a Mill build system.

This trait offers utility methods for automating the download, installation, and configuration of the Android SDK, build tools, and other essential components necessary for Android development. It facilitates setting up an Android development environment, streamlining the process of building, compiling, and packaging Android applications in a Mill project.

For more information, refer to the official Android documentation.

Attributes

Companion
object
Source
AndroidSdkModule.scala
Supertypes
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all

Attributes

Companion
trait
Source
AndroidSdkModule.scala
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Source
AndroidTestModule.scala
Supertypes
trait TestModule
trait RunModule
trait RunModuleApi
trait BspModule
trait BspModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes

Attributes

Companion
trait
Source
AndroidTestModule.scala
Supertypes
class Object
trait Matchable
class Any
Self type
case class ProguardFiles(defaultProguardFile: Option[String], localFiles: Seq[Path])

Attributes

Companion
object
Source
AndroidBuildTypeSettings.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ProguardFiles

Attributes

Companion
class
Source
AndroidBuildTypeSettings.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class UnpackedDep(name: String, classesJar: Option[PathRef], repackagedJars: Seq[PathRef], proguardRules: Option[PathRef], androidResources: Option[PathRef], manifest: Option[PathRef], lintJar: Option[PathRef], metaInf: Option[PathRef], nativeLibs: Option[PathRef], baselineProfile: Option[PathRef], rTxtFile: Option[PathRef], publicResFile: Option[PathRef])

Descriptor of unpacked .aar dependency structure.

Descriptor of unpacked .aar dependency structure.

Value parameters

androidResources

path to the res folder

baselineProfile

path to the baseline profile file

classesJar

path to the classes.jar

lintJar

path to the lint.jar file

manifest

path to the AndroidManifest.xml

metaInf

path to the META-INF folder

name

dependency name

nativeLibs

path to the native .so libraries root folder

proguardRules

path to the proguard rules

publicResFile

path to public.txt file

rTxtFile

path to the R.txt

Attributes

Companion
object
Source
AndroidAppModule.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object UnpackedDep

Attributes

Companion
class
Source
AndroidAppModule.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
object Versions

Attributes

Source
Versions.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Versions.type