Full name:
com.jayway.maven.plugins.android.generation2:android-maven-plugin:3.6.0:pull
Description:
Attributes:
| Name | Type | Since | Description |
|---|---|---|---|
| aaptExtraArgs | String[] | - | A list of extra arguments that must be passed to aapt. |
| androidManifestFile | File | - | The AndroidManifest.xml file. Default value is: ${project.basedir}/AndroidManifest.xml. |
| assetsDirectory | File | - | The android assets directory. Default value is: ${project.basedir}/assets. |
| attachJar | boolean | - | Whether to attach the normal .jar file to the build, so it can be depended on by for example integration-tests which may then access R.java from this project. Only disable it if you know you won't need it for any integration-tests. Otherwise, leave it enabled. Default value is: true. |
| attachSources | boolean | - | Whether to attach sources to the build, which can be depended on by other apk projects, for including them in their builds. Enabling this setting is only required if this project's source code and/or res(ources) will be included in other projects, using the Maven <dependency> tag. Default value is: false. |
| configurations | String | - | A selection of configurations to be included in the APK as a comma
separated list. This will limit the configurations for a certain
type. For example, specifying hdpi will exclude all
resource folders with the mdpi or ldpi
modifiers, but won't affect language or orientation modifiers. For
more information about this option, look in the aapt command line
help. |
| customPackage | String | - | Generates R.java into a different package. |
| device | String | - | Specifies which the serial number of the device to connect to.
Using the special values "usb" or "emulator" is also valid. "usb"
will connect to all actual devices connected (via usb). "emulator"
will connect to all emulators connected. Multiple devices will be
iterated over in terms of goals to run. All device interaction
goals support this so you can e.. deploy the apk to all attached
emulators and devices. Goals supporting this are devices, deploy,
undeploy, redeploy, pull, push and instrument. |
| generateApk | boolean | - | Decides whether the Apk should be generated or not. If set to
false, dx and apkBuilder will not run. This is probably most useful
for a project used to generate apk sources to be inherited into
another application project. Default value is: true. |
| nativeLibrariesDirectory | File | - | Root folder containing native libraries to include in the application package. Default value is: ${project.basedir}/libs. |
| ndk | Ndk | - | The Android NDK to use. Looks like this:
<ndk>
<path>/opt/android-ndk-r4</path>
</ndk>
The <path> parameter is optional. The default is the setting of the ANDROID_NDK_HOME environment variable. The parameter can be used to override this setting with a different environment variable like this:
<ndk>
<path>${env.ANDROID_NDK_HOME}</path>
</ndk>
or just with a hardcoded absolute path. The parameters can also be configured from command-line with parameter -Dandroid.ndk.path. |
| proguardFile | File | - | Automatically create a ProGuard configuration file that will guard
Activity classes and the like that are defined in the
AndroidManifest.xml. This files is then automatically used in the
proguard mojo execution, if enabled. |
| pull | Pull | - | The configuration for the pull goal can be set up in the plugin configuration in the pom file as:
<pull>
<source>path</source>
<destination>path</destination>
</pull>
The parameters can also be configured as property in the pom or settings file
<properties>
<android.pull.source>pathondevice</android.pull.source>
<android.pull.destination>path</android.pull.destination>
</properties>
|
| pullDestination | String | - | The path of the destination to copy the file to. If destination
ends with File.separator, it is supposed to be a
directory. Therefore the source - whether it refers to a file or
directory - will be copied into the destination directory. If
destination does not end with File.separator, the last
path segment will be assumed as the new file or directory name
(depending on the type of source). Any missing directories will be
created. |
| pullSource | String | - | The path of the source file or directory on the emulator/device. |
| release | boolean | - | Whether to create a release build (default is false / debug build).
This affect BuildConfig generation and apk generation at this
stage, but should probably affect other aspects of the build. Default value is: false. |
| renameManifestPackage | String | - | A possibly new package name for the application. This value will be passed on to the aapt parameter --rename-manifest-package. Look to aapt for more help on this. |
| resourceDirectory | File | - | The android resources directory. Default value is: ${project.basedir}/res. |
| resourceOverlayDirectories | File[] | - | The android resources overlay directories. If this is specified,
the resourceOverlayDirectory parameter will be
ignored. |
| resourceOverlayDirectory | File | - | The android resources overlay directory. This will be overridden by
resourceOverlayDirectories if present. Default value is: ${project.basedir}/res-overlay. |
| sdk | Sdk | - | The Android SDK to use. Looks like this:
<sdk>
<path>/opt/android-sdk-linux</path>
<platform>2.1</platform>
</sdk>
The <platform> parameter is optional, and corresponds to the platforms/android-* directories in the Android SDK directory. Default is the latest available version, so you only need to set it if you for example want to use platform 1.5 but also have e.g. 2.2 installed. Has no effect when used on an Android SDK 1.1. The parameter can also be coded as the API level. Therefore valid values are 1.1, 1.5, 1.6, 2.0, 2.01, 2.1, 2.2 and so as well as 3, 4, 5, 6, 7, 8... 16. If a platform/api level is not installed on the machine an error message will be produced. The <path> parameter is optional. The default is the setting of the ANDROID_HOME environment variable. The parameter can be used to override this setting with a different environment variable like this:
<sdk>
<path>${env.ANDROID_SDK}</path>
</sdk>
or just with a hard-coded absolute path. The parameters can also be configured from command-line with parameters -Dandroid.sdk.path and -Dandroid.sdk.platform. |
| undeployBeforeDeploy | boolean | - | Whether to undeploy an apk from the device before deploying it. Only has effect when running mvn android:deploy in an Android application project manually, or when running mvn integration-test (or mvn install) in a project with instrumentation tests. It is useful to keep this set to true at all times, because if an apk with the same package was previously signed with a different keystore, and deployed to the device, deployment will fail becuase your keystore is different. Default value is: false. |
Whether to attach the normal .jar file to the build, so it can be depended on by for example integration-tests which may then access R.java from this project.
Only disable it if you know you won't need it for any integration-tests. Otherwise, leave it enabled.
Whether to attach sources to the build, which can be depended on by other apk projects, for including them in their builds.
Enabling this setting is only required if this project's source code and/or res(ources) will be included in other projects, using the Maven <dependency> tag.
Root folder containing native libraries to include in the application package.
ndk:
The Android NDK to use.
Looks like this:
<ndk>
<path>/opt/android-ndk-r4</path>
</ndk>
The <path> parameter is optional. The default is the setting of the ANDROID_NDK_HOME environment variable. The parameter can be used to override this setting with a different environment variable like this:
<ndk>
<path>${env.ANDROID_NDK_HOME}</path>
</ndk>
or just with a hardcoded absolute path. The parameters can also be configured from command-line with parameter -Dandroid.ndk.path.
pull:
The configuration for the pull goal can be set up in the plugin configuration in the pom file as:
<pull>
<source>path</source>
<destination>path</destination>
</pull>
The parameters can also be configured as property in the pom or settings file
<properties>
<android.pull.source>pathondevice</android.pull.source>
<android.pull.destination>path</android.pull.destination>
</properties>
A possibly new package name for the application. This value will be passed on to the aapt parameter --rename-manifest-package. Look to aapt for more help on this.
sdk:
The Android SDK to use.
Looks like this:
<sdk>
<path>/opt/android-sdk-linux</path>
<platform>2.1</platform>
</sdk>
The <platform> parameter is optional, and corresponds to the platforms/android-* directories in the Android SDK directory. Default is the latest available version, so you only need to set it if you for example want to use platform 1.5 but also have e.g. 2.2 installed. Has no effect when used on an Android SDK 1.1. The parameter can also be coded as the API level. Therefore valid values are 1.1, 1.5, 1.6, 2.0, 2.01, 2.1, 2.2 and so as well as 3, 4, 5, 6, 7, 8... 16. If a platform/api level is not installed on the machine an error message will be produced.
The <path> parameter is optional. The default is the setting of the ANDROID_HOME environment variable. The parameter can be used to override this setting with a different environment variable like this:
<sdk>
<path>${env.ANDROID_SDK}</path>
</sdk>
or just with a hard-coded absolute path. The parameters can also be configured from command-line with parameters -Dandroid.sdk.path and -Dandroid.sdk.platform.
Whether to undeploy an apk from the device before deploying it.
Only has effect when running mvn android:deploy in an Android application project manually, or when running mvn integration-test (or mvn install) in a project with instrumentation tests.
It is useful to keep this set to true at all times, because if an apk with the same package was previously signed with a different keystore, and deployed to the device, deployment will fail becuase your keystore is different.