首页 帮助中心 听云App Android平台-Maven

听云Android平台SDK安装-Maven

1、设置应用名称

  请为需要监测的App设置一个易于识别的应用名称,该App名称将出现在App列表和相关的报表中来代表对应的App。
  App名称可以使用字母数字和中文,最长32个字符。设置App名称时,尽量不要设置重复的App名称,以免给自己造成不必要的麻烦。
  您的App名称可以在设置选项中随时修改

2、使用Maven构建

(1)将以下的配置内容合并到你的pom.xml文件中:
<dependencies>
<dependency>
<groupId>com.networkbench.newlens.agent.android</groupId>
<artifactId>nbs.newlens.agent</artifactId>
<version>TingYun_Version</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>com.networkbench.newlens.agent.android</groupId>
<artifactId>agent-maven-plugin</artifactId>
<version> TingYun_Version </version>
<executions>
<execution>
<goals>
<goal>instrument</goal>
</goals>
</execution>
</executions>
</plugin>
</build>
注:TingYun_Version为当前听云App版本号,可登陆官网查询最新版本号:http://www.tingyun.com/。如:2.3.0。

(2)设置应用程序权限
请在待监测的App工程的AndroidMainfest.xml文件中增加以下的权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.INTERNET" />
(3)插入启动NBSAgent的代码
在待监测App的主Activity(Main Activity)源文件中导入听云的Android探针类:
import com.networkbench.agent.impl.NBSAppAgent;

在onCreate()方法中(如果没有请新增onCreate()方法)增加以下初始化听云App探针的调用:
NBSAppAgent.setLicenseKey("AppKey ").withLocationServiceEnabled(true).start(this.getApplicationContext());
注:如项目使用了腾讯X5框架,可调用setX5Enable()方法

NBSAppAgent.setLicenseKey("AppKey ").withLocationServiceEnabled(true).setX5Enable(true).start(getApplicationContext());

若不需要采集地理位置信息(报表中将没有区域维度的数据)请使用以下代码:

NBSAppAgent.setLicenseKey("AppKey ").start(this.getApplicationContext());
其中“AppKey”从听云App系统中生成。

(4)设置混淆器
  如果待监测的App使用ProGuard工具来优化发布的apk包,为了保证听云App监测SDK可以正常使用,请在所属项目的proguard.cfg文件中加入以下的内容:
# ProGuard configurations for NetworkBench Lens
-keep class com.networkbench.** { *; }
-dontwarn com.networkbench.**
-keepattributes Exceptions, Signature, InnerClasses
# End NetworkBench Lens
如果您希望保留行号信息,建议您在proguard.cfg中添加如下代码:
-keepattributes SourceFile,LineNumberTable

(5)clean 项目工程
建议在Terminal 下Clean 项目工程,以确保听云App配置生效
mvn clean
(6)运行apk

打包编译后,在模拟器或Android设备上运行待监测的App,并进行适当的网络访问。

3、嵌码验证

运行嵌码完成后的APK,连接电脑使用LogCat过滤TAG = NBSAgent查看log日志

出现如下log表示嵌码成功:
NBSAgent start
NBSAgent enabled
NBSAgent V “TingYun_Version”
connect success

4、性能数据采集

  若以上的步骤操作正确,听云App Android SDK探针就已经成功部署到待测App。保持App运行,并访问网络,静待几分钟即可在听云报表看到嵌码App的性能数据。

5、Crash 反混淆

为了更好的帮助用户解析崩溃信息,我们提供了反混淆机制来帮助用户快速精准的定位崩溃发生位置。当您使用反混淆机制时,需要您上传当前版本的 Mapping File到听云服务器。
目前,我们提供了两种方式上传 Mapping File,您可以选择任意一种方式上传您的 Mapping File此过程不会干扰正常用户代码和打包编译。

5.1、查找Mapping File 文件
进入嵌码项目根目录,搜索Mapping.txt。

5.1.1、报表上传对应版本的Mapping File

i.登陆听云报表,在App概览中选择嵌对应的App名称,进入App后选择左侧菜单栏中的“崩溃”按钮:

ii.在右侧“崩溃历史记录列表”中选择并点击“dSYM / Mapping文件管理”

iii.在弹出窗口中选择上传平台类型,如:“Android”。选择对应的应用版本号,并点击右侧上传按钮,手动上传Mapping File

6、配置 tingyun.properties 文件

6.1、新建配置文件

进入Eclipse 安装目录,在Eclipse.ini同级目录下新建tingyun.properties配置文件

6.2、配置Mapping File自动上传

将下列配置项添加到到tingyun.properties配置文件:
authKey=听云API账号授权Key,由报表系统生成
appKey=听云App授权Key
mapping_file_auto_upload=上传Mapping开关

1)配置AuthKey 授权码


i.登陆报表,选择用户名称,点击修改授权码


ii.复制“当前授权码”并黏贴到配置文件下

2)配置AppKey


i.登陆报表,在App概览中选择嵌对应的App名称,如:Android_SDK。点击左侧配置按钮,选择“修改设置”

ii.进入“修改配置”后,找到“安装SDK”选择“App Key”复制到配置文件中

2)配置mapping_file_auto_upload 上传开关
如果您需要自动上传Mapping File,请在配置文件中打开Mapping File控制开关:
mapping_file_auto_upload=true
注意:改开关只有在启用混淆器时才会生效,通过主机上传Mapping File到听云服务器,您可以在正式发布或需要时打开Mapping File上传开关,如应用未开启混淆器,听云SDK将不会启用配置文件

6.3、配置OkHttp控制开关

将下列配置项添加到到tingyun.properties配置文件:
okhttp3.0=true
注:听云默认对OkHttp2.0嵌码,如果您使用Okhttp2.0请忽略该设置,若使用的是OkHttp1.0请设置okhttp2.0=false即可

6.4、配置WebView控制开关

将下列配置项添加到到tingyun.properties配置文件:
webview=true

注:听云WebView需使用setWebViewClient方法,如未实现该方法,请添加如下代码
webview.setWebViewClient(new WebViewClient() {});

7、配置用户自定义附加信息

  听云App提供用了户自定义附加信息接口,用户可以自定义配置附加信息。当应用发生Crash时上传到报表服务器。用户可以再初始化之后任意位置配置该接口。UserCrashMessage最多可添加10条附加信息,每条附加信息最大支持100个字节。
  用户自定义附加接口如下:
NBSAppAgent.setUserCrashMessage(String key,String value)

附录

听云App支持协议类库

HttpURLConnection

AndroidHttpClient
 4.0

Apache HttpClient ( > 4.0)

Volley+OkHttpClient

OkHttp 2.0 ( > 2.1)

OkHttp 1.0

Retrofit (> 1.9)

听云TCP支持设备版本

目前只支持Android 4.0