Prepare your application

If you're using Unity or Unreal Engine to build your application, follow the instructions here instead:

To enable Performance Advisor to generate a report for devices running Android 9 or earlier, you need to add the Arm interceptor library to your application. The library is provided in your Arm Mobile Studio package:


Two versions of the library are provided:

  • For 64-bit applications, the library file is located in the arm64-v8a directory.
  • For 32-bit applications, the library file is located in the armeabi-v7a directory.

Note: This step is only necessary for devices running Android 9 or earlier. For Android 10 devices Performance Advisor can use GLES layers or Vulkan validation layers to collect information from the device. You can ignore this step and go straight to Capture a Streamline profile.


  1. Specify the location of the interceptor library in the module’s build.gradle file by adding the following line to the SourceSet main:
     jniLibs.srcDirs += ['<install_dir>/graphics_analyzer/target/android/arm/unrooted/']
    Note: Specify the unrooted directory, not the subdirectory that contains the library.
  2. Ensure that the abiFilters property in the module’s build.gradle file is set to a value that the interceptor supports; either armeabi-v7a, arm64-v8a, or both. For example, to support both Armv7 and Armv8 targets, specify:
    android {
             defaultConfig {
                   ndk {
                        abiFilters 'armeabi-v7a', 'arm64-v8a'
  3. Enable the interceptor by adding a Java component to the application to be traced to enable it to load the interceptor library. The details of this step depend on the type of application.

    For applications that use C or C++ only:
    1. Create a new Activity class that extends
    2. Reference this new Activity in your AndroidManifest.xml as the android:name attribute of the activity element.
    3. Ensure that the android:hasCode attribute of the application element is set to true, otherwise the Java file will not be included in the APK.
    For applications that use Java, C/C++, or both, add the following code to the beginning of the project's main Activity class:
          catch (UnsatisfiedLinkError e)
  4. Recompile the application and install it on the target device.
Previous Next