Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jul 11, 2025. It is now read-only.

TLJavaHome/pre-dem-android

Repository files navigation

七牛APM部署文档

简介

Android SDK Theory

七牛APM SDK 通过虚拟机技术在应用打包编译过程中对应用采样点(Http 标准协议和 Https 标准协议)进行嵌码操作,该操作会在协议库方法前后部署 SDK 探针,该过程不会影响用户代码逻辑; 每当 App 启动时,七牛 Agent 开始工作,应用有网络请求时,通过之前部署的 SDK 探针以一定的采集频率来采集数据,并对采集的数据进行汇总后,上传到服务器(已报表的形式展现) 应用退出到后台或用户关闭App时,七牛Agent 停止工作,以便减少不必要的流量和CPU消耗

Android SDK 增量

  • 应用 App 嵌码后体积增量为 117K 左右

使用 Gradle 构建

工程相关依赖构建

需要确保已安装 Gradle 构建环境和 AS开发环境

  • 打开项目根目录下的build.gradle (Project) 文件

  • 在buildscript模块加入代码

    dependencies {
     ...
     classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:1.0.10'
     classpath 'org.aspectj:aspectjtools:1.8.9'
     ...
    }
    

image

  • 打开项目工程主模块下的build.gradle ( app ) 文件

  • 在文件中引入 aspectj 插件

    apply plugin: 'android-aspectjx'
    
  • 在dependencies模块添加 SDK 依赖

    dependencies {
    	...
    	compile 'com.qiniu:pre-dem-android-sdk:1.0.0'
    	...
    }
    

image

配置应用权限

构建完成后,请在待检测的 App 工程的 AndroidMainfest.xml 文件中增加以下的权限:

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

image

插入初始化探针代码

在 "MainActivity" 中的 onResume() 方法(如未找到该方法请新增)中初始化 Android APM SDK

```
DEMManager.start("apm.domain.com", "appkey", this.getApplicationContext());
```

image

使用 Gradle 命令打包编译

`gradle clean build`

配置混淆

发布前请在 proguard 混淆配置文件中增加以下内容,以免 SDK 不可用 若需要保留行号信息,请在 proguard.cfg 中添加以下内容

嵌码完整性校验

  • 数据收集服务器校验

  • 嵌码完成后可通过 "LogCat" 查看 SDK 日志输出结果,用以进行数据收集服务器校验,TAG 为 DEMManager, 标准日志输出结果如下所示

    08-28 09:40:26.370 6726-6726/qiniu.predem.example D/DEMManager: DemManager start
    08-28 09:40:26.674 6726-7109/qiniu.predem.example D/DEMManager: ---Http monitor true
    08-28 09:40:26.682 6726-7109/qiniu.predem.example D/DEMManager: ---Crash report true
    08-28 09:40:26.682 6726-7109/qiniu.predem.example D/DEMManager: ----Lag monitor true
    

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 100.0%

AltStyle によって変換されたページ (->オリジナル) /