This documentation is for WSO2 Enterprise Mobility Manager 2.2.0. View documentation for the latest release.
Customizing the Android APK File - Enterprise Mobility Manager 2.2.0 - WSO2 Documentation
Skip to end of metadata
Go to start of metadata

You will want to make changes to the Android Application Package (APK) that is in WSO2 EMM to suit your business or Organization requirements. For example, you will want to white label the WSO2 EMM Android agent. In such situations, you need to do the required changes and create a new APK file. 


  1. Download and install Android Studio.

    For more information, see installing Android Studio.

  2. Replace the android.jar file that is in the <ANDROID_STUDIO>/<SDK location>/platforms/android-<CURRENT_API_LEVEL>
    directory with the android.jar file found here.

    Why is this needed?

    The WSO2 Android agent requires access to hidden APIs (APIs that are available at runtime). Therefore, you need to replace the anrdoid.jar file as mentioned in this step.

  3. WSO2 EMM supports API levels 16 to 23. Therefore, install the Android API levels 16 to 23 on Android Studio.
    1. Open Android Studio.
    2. Click SDK Manager.
    3. Click the SDK Platform tab and select the 16 and 23 API levels.
    4. Click Apply.

Creating a new APK

  1. Clone the product-emm GIT repository. This will be referred to as <EMM_SOURCE_HOME>.

    git clone
  2. Open the client folder that is in the <EMM_SOURCE_HOME>/modules/mobile-agent/android directory via Android Studio.
  3. Do the necessary changes you wish to make.
    White Labeling the WSO2 EMM Android Agent or changing the Android agent SERVER_PROTOCOL to https and SERVER_PORT to 9443 in the file that is in the <EMM_SOURCE_HOME>/modules/mobile-agents/android/client/client/src/main/java/org/wso2/emm/agent/utils directory.
  4. The Android agent can't be built via the usual android developer SDK, as it requires access to developer restricted APIs. Therefore, you need to replace the existing android.jar file that is in the <SDK_LOCATION>/platforms/android-<COMPILE_SDK_VERSION> directory with the explicitly built android.jar file that has access to the restricted APIs. 
    You can get the new jar file using one of the following methods:

  5. Build the project to create a new APK file that has all the changes you made.

  6. Rename the created .apk file to  android-agent.apk.
  7. Copy the renamed file and replace it instead of the existing android-agent.apk file that is in the <EMM_HOME>/repository/deployment/server/jaggeryapps/emm-web-agent/units/asset-download-agent-android/public/asset directory.
  • No labels