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.
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 R.java file or from XML resource definition files. The default location is <module root>/res . |
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 R.java file or from XML resource definition files. You can access this directory like a normal file system and read data from these files using the AssetManager. The default location is <module root>/assets . |
Native libs directory | In this text box, specify the path to the folder where the Android native libraries are stored. The default location is <module root>/libs . |
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 , AndroidManifest.jave and .aidl files to be generated automatically based on the definitions of resources and the AndroidManifest.xml file. |
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 the Browse button 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 the Browse button 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 the Browse button 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 the Browse button 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 the Browse button 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 the Browse button 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 check box in the Generate Signed APK wizard and in Project Structure | Artifacts | Android tab. |
Config file paths | This text box 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 the Browse button and select a folder in the dialog that opens. |
Multi-dex tab
In this tab you can configure the multi-dex support.