1. 导入SDK
1.1 使用Android Studio导入
⾸先需要将 PtEventSDK_v**.aar ⽂件放⼊引⽤ Module 的 libs ⽬录下,然后在 build.gradle 配置⽂件中把 libs ⽬录加⼊依赖:
repositories{
flatDir{
dirs 'libs'
}
}
- repositories{
- flatDir{
- dirs 'libs'
- }
- }
repositories{
flatDir{
dirs 'libs'
}
}
接着在 gradle 的依赖配置中加⼊ compile(name: ‘PtEventSDK_v**’, ext: ‘aar’) 。
1.2 使用Eclipse ADT导入
解压 aar 文件,将 classes.jar 改为你喜欢的名字,然后在Eclipse中右键工程根目录,选择Properties -> Java Build Path -> Libraries,然后点击Add External JARs… 选择指向jar的路径,点击OK。将解压后的 res/drawable,res/layout 文件夹覆盖到 当前工程的 res 中对应的 文件夹。
2. 添加权限
权限 |
用途 |
INTERNET |
允许程序联网和发送统计数据的权限。 |
ACCESS_NETWORK_STATE |
允许应用检测网络连接状态,在网络异常状态下避免数据发送,节省流量和电量。 |
READ_PHONE_STATE |
允许应用以只读的方式访问手机设备的信息,通过获取的信息来唯一标识用户。 |
ACCESS_WIFI_STATE |
获取设备的MAC地址,同样用来标识唯一用户。 |
代码示例:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
3. 配置App Id和渠道
在AndroidManifest.xml ⽂件中添加如下内容:
<application >
<meta-data android:name="PT_APP_ID" android:value="******" /> (添加应⽤时⽣成的App Id)
</application>
- <application >
- <meta-data android:name="PT_APP_ID" android:value="******" /> (添加应⽤时⽣成的App Id)
- </application>
<application >
<meta-data android:name="PT_APP_ID" android:value="******" /> (添加应⽤时⽣成的App Id)
</application>
4. 集成管理代码
在每个Activity的onResume和onPause方法中添加代码,如下:
@Override
protected void onResume() {
super.onResume();
PtAgent.onResume(this,null);
}
@Override
protected void onPause() {
super.onPause();
PtAgent.onPause(this);
}
- @Override
- protected void onResume() {
- super.onResume();
- PtAgent.onResume(this,null);
- }
- @Override
- protected void onPause() {
- super.onPause();
- PtAgent.onPause(this);
- }
@Override
protected void onResume() {
super.onResume();
PtAgent.onResume(this,null);
}
@Override
protected void onPause() {
super.onPause();
PtAgent.onPause(this);
}