Skip to main content

MainApplication Task Configuration (main_application)

Modify MainApplication java or kt file

The main_application task is designed to facilitate modifications to the MainApplication java or kotlin files in Android projects. It is the main entry file of the android application. This task provides the flexibility to make changes to different sections of the MainApplication java or kotlin file.

Task Properties

PropertyTypeDescription
task"main_application", requiredSpecifies the task type, which should be set to "main_application" for this task.
namestringAn optional name for the task. If provided, the task state will be saved as a variable. Visit Task and Action States page to learn more.
labelstringAn optional label or description for the task.
whenobjectVisit Conditional Tasks and Actions page to learn how to execute task conditionally.
lang"java" (default) or "kotlin"Specifies the language of the file, distinguishing between the java and kt file. It helps determine which MainApplication file to modify during the configuration process. "java" modifies MainApplication.java file and "kotlin" modifies MainApplication.kt file.
actionsArray<Action>, requiredAn array of action items that define the modifications to be made in the file. Each action item contains the following fields:

Action Properties

Common properties

PropertyTypeDescription
namestringAn optional name for the task. If provided, the task state will be saved as a variable. Visit Task and Action States page to learn more.
whenobjectVisit Conditional Tasks and Actions page to learn how to execute action conditionally.

Context reduction properties

PropertyTypeDescription
beforestring or {regex: string, flags: string}Text or code that is used to specify a point within the context where text should be inserted before. It can be a string or an object with a regex and flags field to perform a regex-based search.
afterstring or {regex: string, flags: string}Text or code that is used to specify a point within the context where text should be inserted after. It can be a string or an object with a regex and flags field to perform a regex-based search.
searchstring or {regex: string, flags: string}A string or object (with regex and flags) that narrows the context to a specific text within the method or file.

Context modification properties

PropertyTypeDescription
prependstring or {file: string}Text or code to prepend at the beginning of the specified context. It can be a string or an object with a file field that points to a file containing the code to prepend.
appendstring or {file: string}Text or code to append at the end of the specified context. It can be a string or an object with a file field that points to a file containing the code to append.
replacestring or {file: string}Text or code to replace the entire specified context. It can be a string or an object with a file field that points to a file containing the code to replace.

Other properties

PropertyTypeDescription
exactbooleanA boolean flag that modifies the whitespace and new line management.
strictbooleanSpecifies the behavior of the before and after fields. If set to true, the task will throw an error if the text in the before or after field is not found in the context, otherwise, it will ignore the field.
ifNotPresentstringIndicates that the task should only be executed if the specified text or code is not present within the specified context.
commentstringAn optional comment to add before the inserted code or text. The comment is purely informational and does not affect the code's functionality.

Example

task: main_application
label: "Adding import"
lang: "kotlin",
actions:
- prepend: import com.some.lib

In this example, the main_application task adds an import to the file.