极光统计 Android SDK 集成指南
使用提示
本文是JAnalytics Android SDK 标准的集成指南文档。
匹配的 SDK 版本为:v1.0.0及以后版本。
如果您想要快速地测试、请参考本文在几分钟内跑通Demo。
极光推送文档网站上,有相关的所有指南、API、教程等全部的文档。包括本文档的更新版本,都会及时地发布到该网站上。
产品说明
利用事件模板统计App用户的行为事件并上报给极光服务器,极光提供加工过的数据通过WebPortal展示给开发者,让开发者更加了解自己的应用在用户手中的使用情况。
主要场景:1.统计页面流
2.统计自定义计数事件
3.统计自定义计算事件
4.动态圈选功能(JAnalytics2.0.0开始支持)
janalytics-android-release-2.x.y.zip 集成压缩包内容AndroidManifest.xml客户端嵌入SDK参考的配置文件
libs/jcore-android_v1.x.x.jarsdk 核心包
libs/xxx/xx.sosdk需要用的so文件
libs/janalytics-android-sdk_v2.x.x.jarSDK analysis 开发包
example是一个完整的 Android 项目,通过这个演示了 JAnalysis SDK 的基本用法,可以用来做参考。
Android SDK 版本
目前SDK只支持Android 2.3或以上版本的手机系统。 动态圈选功能只支持Android4.2或以上版本的手机系统。
Gradle 版本
动态圈选功能建议使用gradle版本为3.3,gradle插件版本2.3.2。 在gradle-wrapper.properties里配置 distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
创建应用
创建极光开发者帐号
请访问极光推送官方网站 注册您的极光账号。
Portal上创建应用
使用注册账号登陆,进入极光控制台后,点击“创建应用”按钮,进入创建应用的界面。填上你的应用程序的名称以及应用包名这二项就可以了,最后点击最下方的 “创建我的应用”按钮,创建应用完毕。
查看应用信息
创建应用之后返回用户主页面可以看到应用清单,点选你刚才创建的应用来查看应用信息。
JCenter 自动集成方式
说明1 : 使用jcenter自动集成的开发者,不需要在项目中添加jar,jcenter会自动完成依赖;jcenter 也会自动导入 JAnalytics 所需的权限和 meta-data 节点进你项目的 AndroidManifest 中。 说明2 : 想添加动态圈选功能的开发者,将以下集成步骤与动态圈选相关的配置加上即可
确认android studio的 Project 根目录的主 gradle 中配置了jcenter支持。
buildscript{
repositories{
jcenter()
}
......
dependencies{
//gradle建议版本
classpath'com.android.tools.build:gradle:2.3.2'
//可选: 动态圈选plugin
classpath'cn.jiguang.android:janalytics-gradle-plugin:2.0.0'
}
}
allprojects{
repositories{
jcenter()
}
}
在 module 的 gradle 中添加依赖和AndroidManifest的替换变量。
//可选:动态圈选需要的插件。如果已经集成了动态圈选功能,又想关闭,只注释掉这行配置代码即可
apply plugin:'cn.jiguang.android.analytics'
android{
......
defaultConfig{
applicationId"com.xxx.xxx"// 你应用的包名.
......
manifestPlaceholders=[
JPUSH_APPKEY:"你的appkey",//JPush上注册的包名对应的appkey.
JPUSH_CHANNEL:"developer-default",//暂时填写默认值即可.
]
......
}
......
}
dependencies{
......
compile'cn.jiguang.sdk:janalytics:2.0.0'// 此处以JAnalytics 2.0.0 版本为例。
compile'cn.jiguang.sdk:jcore:1.2.6'// 此处以JCore 1.2.6 版本为例。
......
}
可选:动态圈选功能,需要在你的AndroidManifest.xml里,主页面Activity标签下添加intent-filter,以实现扫码唤出圈选功能
android:name=".MainActivity"
android:exported="true"
android:label="@string/app_name"
android:launchMode="singleTask">
本地工程配置
说明 : 想添加动态圈选功能的开发者,需要将以下集成步骤与动态圈选相关的配置加上即可
解压压缩包,将libs下的所有文件复制到工程的libs下面.jcore 和 janalytics 两个 jar 文件。
所有 CPU 平台的 so 文件。
配置 AndroidManifest:
android:name=".MainActivity"
android:exported="true"
android:label="@string/app_name"
android:launchMode="singleTask">
android:theme="@android:style/Theme.NoTitleBar"
android:screenOrientation="portrait"/>
可选:动态圈选功能,在android studio的 Project 根目录的主 gradle 中配置插件支持。
buildscript{
repositories{
jcenter()
}
......
dependencies{
//gradle建议版本
classpath'com.android.tools.build:gradle:2.3.2'
//可选: 动态圈选plugin
classpath'cn.jiguang.android:janalytics-gradle-plugin:2.0.0'
}
}
allprojects{
repositories{
jcenter()
}
}
可选:动态圈选功能,在 module 的 gradle 中添加插件依赖。如果已经集成了动态圈选功能,又想关闭,只注释掉这行配置代码即可
apply plugin:'cn.jiguang.android.analytics'
混淆相关:在混淆文件中添加以下配置,防止 sdk 的接口被混淆。
-keeppublicclasscn.jiguang.analytics.android.api.**{
*;
}
添加代码
基础 API初始化 sdk : 传入 application 的 context 来初始化 sdk 。
JAnalyticsInterface.init(Contextcontext);
设置调试模式:参数为 true 表示打开调试模式,可看到 sdk 的日志。
JAnalyticsInterface.setDebugMode(booleanisDebugMode);
更多 API
其他 API 的使用方法请参考接口文档:Android SDK API
运行 demo
压缩包附带的 example 是一个 API 演示例子。你可以将它导入到你的工程,并将你的 AppKey 填入到 example 的 AndroidManifest 中,然后直接运行起来测试。
技术支持