接入Android应用

ARMS用户体验监控App监控提供了非常全面的移动端应用监控能力,主要包括iOS应用监控和Android应用监控。本文介绍如何将Android应用接入ARMS用户体验监控

步骤一:创建应用

  1. 登录ARMS控制台

  2. 在左侧导航栏选择用户体验监控 > 应用列表,并在顶部菜单栏选择目标地域。

  3. 应用列表页面单击添加应用

  4. 创建应用面板单击Android

  5. Android面板输入应用名称和描述,然后单击创建

    说明

    应用名称唯一,不能与已创建的应用名称重复。

    创建成功后,当前应用将会自动生成对应的ConfigAddress(上报地址)和AppID。

步骤二:集成SDK

Maven自动集成(推荐)

Android Studio工程的build.gradle配置脚本中添加Maven线上依赖,并导入最新版本的SDK。

  1. 在工程根目录下的build.gradle配置脚本中添加插件依赖。

    buildscript {
        repositories {
            mavenLocal()
            google()
            mavenCentral()
            gradlePluginPortal()
        }
    
        dependencies {
            // 导入阿里云 ARMS RUM 插件依赖
            // 最新版本SDK说明请参见Android SDK版本说明文档
            classpath "com.aliyun.rum:alibabacloud-android-rum-plugin:0.3.5"
        }
    }
  2. 在工程App模块对应的build.gradle配置脚本中启用插件并添加SDK依赖。

    // 启用阿里云 ARMS RUM 插件
    apply plugin: "com.aliyun.rum"
    
    dependencies {
      // 导入阿里云 ARMS RUM SDK
      // 最新版本SDK说明请参见Android SDK版本说明文档
      implementation("com.aliyun.rum:alibabacloud-android-rum-sdk:0.3.5")
    }

手动集成

  1. 下载SDK并解压。

    解压.zip文件后得到如下内容:

    • libs文件夹,包含必须的jar包和jni

    • repo文件夹,包含必须的插件

    image

  2. 配置工程。

    1. 复制repo文件夹到项目根目录,复制libs文件夹到App Module目录。

      image

    2. 打开项目根目录下的build.gradle(Gradle 7.0 及以下)或settings.gradle (Gradle 7.0以上)文件,在repositories块中加入以下Maven配置。

      build.gradle文件配置

      buildscript {
          repositories {
              maven {
                  url uri('./repo')
              }
              //... 其他配置
          }
      }
      
      allprojects {
          repositories {
              maven {
                  url uri('./repo')
              }
              //... 其他配置
          }
      }
      
      //... 其他配置

      settings.gradle文件配置

      pluginManagement {
          repositories {
              maven {
                  url uri('./repo')
              }
              //... 其他配置
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              maven {
                  url uri('./repo')
              }
              //... 其他配置
          }
      }
      //... 其他配置
    3. 在项目根目录下的build.gradle文件中,加入classpath配置。

      // 不区分Gradle版本,加入下面内容
      buildscript {
          dependencies {
              classpath "com.aliyun.rum:alibabacloud-android-rum-plugin:0.3.5"
          }
      }
      //... 其他配置
    4. 打开App Module下的build.gradle文件,导入AlibabaCloudRUM插件和依赖。

      apply plugin: "com.aliyun.rum"
      //... 其他配置
      android {
          //... 其他配置
          sourceSets {
              main {
                  jniLibs.srcDirs = ['libs']
              }
          }
          //... 其他配置
      }
      
      dependencies {
          implementation files('libs/alibabacloud-android-rum-sdk.jar')
          implementation files('libs/com.openrum.sdk.jar')
          //... 其他配置
      }

步骤三:权限配置

ARMS RUM SDK需要宿主App授予以下权限。

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

步骤四:混淆配置

若您的应用使用ProGuard混淆,请添加以下配置。

#ProGuard configurations for Aliyun ARMS RUM SDK
-keep class com.openrum.**{*;}
-keep class openrum.**{*;}
-keep class com.alibabacloud.rum.**{*;}
-dontwarn com.openrum.**
-dontwarn openrum.**
#End Aliyun ARMS RUM SDK

-optimizations !code/simplification/*,!field/*,!class/merging/*,!method/propagation/*,!class/unboxing/enum,!code/allocation/variable

步骤五:初始化SDK

请在自定义ApplicationonCreate函数首行添加以下代码。

import com.alibabacloud.rum.AlibabaCloudRum;

public class YourApplication extends Application {
  @Override
  public void onCreate() {
    super.onCreate();
    AlibabaCloudRum.withAppID("<your appid>") // AppID,步骤一创建RUM应用时获取。
      .withConfigAddress("<your config address>") // ConfigAddress,步骤一创建RUM应用时获取。
      .start(getApplicationContext());
  }
}

接入验证

启动已经集成了SDKAPK应用,查看Android Studio Logcat日志,搜索openrum关键字(或者过滤OpenRUM标签),出现如下log则表示SDK集成成功且数据开始采集。

image