感谢您的反馈!
百川码力APP监控Android版本,目前支持gradle自动配置的方式进行快速接入。开发者可以在五分钟内接入完成。
百川码力APP监控是百川提供的移动应用性能检测工具,可以帮助开发者更早的发现用户使用过程中出现的问题,并快速定位、分析、解决问题。
码力现提供的检测为应用崩溃检测、卡顿检测和网络检测。
码力APP监控Android版本支持在以下运行环境:
在V 1.1.0版本以及以后版本,码力Android端SDK不推荐本地Grandle依赖。请基于下方的集成建议,使用仓库依赖。
${project.root}/build.gradle [项目总build.gradle]
buildscript { repositories { maven { url 'http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/' } mavenLocal() jcenter() } dependencies { classpath('com.android.tools.build:gradle:2.2.0') classpath('com.alibaba.apmplus:android-gradle:1.2.1') } } allprojects { repositories { jcenter() mavenLocal() maven { url 'http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/' } } }
${project.root}/app/build.gradle [应用build.gradle]
apply plugin: 'com.android.application' apply plugin: 'com.alibaba.android.apmplus' /** 仓库 */ repositories{ mavenLocal() maven{ url 'http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/' } } /** android gradle 原生配置 */ android { } /** apmplus 配置 见apmplus详情 */ apmplus{ appKey '88888888' appSecret 'yourappsecret' } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.alibaba.apmplus:android-agent:1.2.0' // compile 'com.alibaba.apmplus:android-agent:1+' }
WebView需使用setWebViewClient方法,如未实现该方法,请添加如下代码 webview.setWebViewClient(new WebViewClient() {})
apmplus key | 可选\必选 | 值类型 | 默认值 | 描述 |
---|---|---|---|---|
appKey | 必选 | int | 无 | 百川平台申请的应用均可在控制台获取对应的appKey |
appSecret | 必选 | string | 无 | 请访问码力APP监控控制台查询对应APP的AppSecret |
forceEnabled | 可选 | boolean | false | 在非release模式下强制开启apmplus的相关功能 |
threshold | 可选 | int | 3000 | webview 慢连接阀值[单位毫秒],阈值下限为2000ms |
appVersion | 可选 | string | 1.0 | 自定义的应用版本不同于manifest的versionName |
channel | 可选 | string | apmplus | 表示app发行渠道的标识 |
sampling | 可选 | int | 5000 | 采样率万分比范围[1~10000] |
crash | 可选 | boolean | true | 开启crash 上报 |
level | 可选 | string | INFO | 日志等级[DEBUG/VERBOSE/INFO/WWARNING/ERROR] |
compileLog | 可选 | boolean | false | 打印编译日志到${project.root}/build/intermediates/apmplus/目录 |
autoMappingUpload | 可选 | boolean | true | 是否自动上传 mapping.txt,若开启,则控制台错误堆栈的源代码类名称以及行号等可正常显示 |
autoProguardConfig | 可选 | boolean | true | 自动配置proguard文件 |
完成上述集成工作后,您可以制造一个Crash来体验百川码力的APP监控的能力了。
Crash测试样例:
throw new NullPointerException();
在触发Crash后,您就可以在码力控制台查看到这个Crash记录了(会有一些延时)。
网络测试样例:
private final class Task extends Thread { @Override public void run() { Log.e(TAG, "urlConnect........"); try { URL url = new URL("https://www.taobao.com/"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoOutput(true); conn.setDoInput(true); conn.setConnectTimeout(6 * 1000); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); conn.setInstanceFollowRedirects(true); conn.connect(); DataOutputStream out = new DataOutputStream(conn.getOutputStream()); out.writeChars("helloworld"); out.flush(); out.close(); Log.i(TAG, "http status code = " + conn.getResponseCode() + "-->" + conn.getRequestMethod()); InputStream inputStream = conn.getInputStream(); DataInputStream dis = new DataInputStream(inputStream); ByteArrayOutputStream bs = new ByteArrayOutputStream(); byte[] buffer = new byte[2048]; int i; while ((i = dis.read(buffer, 0, 2048)) != -1) { bs.write(buffer, 0, i); } inputStream.close(); } catch (Throwable t) { Log.e(TAG, "http request", t); } } };
在上报网络数据后,您就可以在码力APP监控控制台查看到这个网络记录了(等待约1分钟)。
APMPlus.java
public final static void setAppVersion(final Context context, String appVersion)
public final static void setUserToken(final Context context, String userToken)