Android Facet Page
Use this page to configure the settings of an Android facet attached to a specific module.
In this section:
- Common Android facet options
- Structure tab
- Generated Sources tab
- Packaging tab
- ProGuard tab
- Multi-dex tab
Common Android facet options
In this area, configure the facet general settings.
Item | Description |
---|---|
Library module | Select this checkbox to turn this module into a library module, so that other Android application projects can reference its source code and resources. |
Update "project.properties" file automatically | Select this option if you want the project.properties file to be updated automatically when one of the following options is enabled or disabled:
|
Reset paths to defaults | Click this button to return to the default Android facet settings. |
Structure tab
In this tab, specify the location of the key application components in the module tree structure. Based on these settings, IntelliJ IDEA supports code completion, resolves references, and provides other types of coding assistance.
Item | Description |
---|---|
Manifest file | In this text box, specify the path to the AndroidManifest.xml file. This file contains the information that is required to run the application. It must be located in the module root directory. |
Resources directory | In this text box, specify the path to the folder where the application resources are stored. Resources located in this directory are assigned IDs and can be referenced through the |
Assets directory | In this text box, specify the path to the folder where the application assets are stored. Files located in this directory are not assigned IDs and cannot be referenced through the |
Native libs directory | In this text box, specify the path to the folder where the Android native libraries are stored. The default location is |
Generated Sources tab
In this tab, specify the location of the application source files.
Item | Description |
---|---|
Generate sources automatically | Select this option if you want the |
R.java and Manifest.java files | In this area, specify the target folder for the R.java file that contains IDs of all resources defined in your project, and the AndroidManifest.jave file that contains permissions. To change the default location, type the path manually or click Browse and select the target folder in the dialog that opens. |
AIDL files | In this area, specify the target folder for the .aidl files generated by the AIDL Compiler. To change the default location, type the path manually or click Browse and select the target folder in the dialog that opens. |
Packaging tab
In this tab, configure the behavior of the Android Asset Packaging Tool (aapt) that is responsible for creating an .apk
file.
Item | Description |
---|---|
Use resource directory specified at "Structure" section | Select this option if you want the compiler to use the resources from the location specified in the Resources directory field in the Structure tab. |
Use custom resource directory | Select this option if you want the package to contain resources from a location different from the one specified in the Resources directory field in the Structure tab. Type the path manually or click Browse and select the target folder in the dialog that opens. |
Include assets from dependencies into APK | Select this option if you want to include assets from dependencies into the application package. |
Rename manifest package | Select this option if you want the application ID to be changed on build time, and specify the new name (for more information, see Renaming an Application Package). This option is only available for Application modules. |
Enable manifest merging | Select this option if you want to automatically merge manifest files of library modules with the manifest file of the application that contains this library module (for more information, see Sharing Android Source Code and Resources Using Library Projects). This option is only available for Application modules. |
Additional command line parameters | In this text box, type the additional parameters to be passed to the Android Asset Packaging Tool(aapt). If the set of additional parameters does not fit into the text box, click and specify the parameters in the dialog that opens. For example, if you want to include resources of a certain type in an uncompressed format, type |
APK path | Specify the target directory for the .apk file that will be generated as a result of Android module compilation. Select a folder from the drop-down list, or click Browse and specify the path in the dialog that opens. |
Custom debug keystore | In this text box, specify the location of the keystore where the debug key you want to use is located. Type the path manually or click Browse and select a folder in the dialog that opens. |
Include test code and resources into APK | Select this option to include sources and resources located under the test roots into the debug APK created on build time. Test data is never included in the release APK that is generated via the Generate Signed APK wizard. |
Pre-dex external jars and Android library dependencies | During the application packaging, the As a rule, the contents of a library module remain unchanged. In this case you can have them By default, IntelliJ IDEA pre-dexes library mode dependencies as well as external When this option is selected, This option is unavailable for Library modules. |
ProGuard tab
In this tab, enable the ProGuard tool used to obfuscate the application during packaging.
Item | Description |
---|---|
Proguard logs directory | This text box shows the default location of the ProGuard logs. To modify the location, click Browse and select a folder in the dialog that opens. |
Run ProGuard when building debug APK | Select this option if you want IntelliJ IDEA to obfuscate the debug APK through integration with the built-in ProGuard tool. Note that for release application packages, there is a dedicated checkbox in the Generate Signed APK wizard and in Project Structure | Artifacts | Android tab. |
Config file paths | This field shows the default location of the proguard-project.txt configuration file that is created automatically together with an Android module. To modify the location, click Browse and select a folder in the dialog that opens. |
Multi-dex tab
In this tab you can configure the multi-dex support.
Item | Description |
---|---|
Enable multi-dex support | Select this checkbox to enable Android multi-dex feature. |
Main dex list | Specify the main dex list. |
Minimal main dex | Select this checkbox for minimal main dex. This option lets you put only classes that are selected by main dex list into the main dex. |