10.2 Andriod SDK 部署文档

优质
小牛编辑
128浏览
2023-12-01

SDK 下载地址:https://www.xnip.cn/wp-content/uploads/2020/docimg26/JiceSDK_conv_Android.zip

开发环境


  • Android 版本
    • Android SDK 要求最低系统版本为 API 17(Android 4.2),集成之前请将Android SDK升级到API 17及以上。
  • v4兼容包 SDK内部使用到了Pair类,需要依赖android-support-v4.jar,请在工程内集成或替换最新版本的v4包即可。

集成 SDK


第1步:导入SDK

  • Eclipse ADT
    • 登录及策网站,点击右下角设置,进入APP信息管理页面,点击Andriod SDK按钮下载SDK。将jicesdk.jar拷贝到工程的libs目录下,重新build工程即可。

第2步: 添加相关权限到 AndroidManifest.xml

    <!-- 网络权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    
    <!-- 网络状态相关权限 -->
    <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_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        

初始化 SDK


第1步: 从Jice网站获取appid

登录及策网站,进入应用管理页面,获取 appid.

第2步: 在AndroidManifest.xml中配置appkey

在你的应用AndroidManifest.xml文件的application节点下为应用配置appKey

    <meta-data android:name="com.admaster.jicesdk.appKey" android:value="Jice网站为您分配的appid" />

第3步: 在 main activity 中引入Jice instance

在程序入口Activity中引入 com.admaster.jice.api.JiceSDK,调用 getInstance(Context context, JiceConfig config) 初始化SDK;

  • API参数
    • appKey: JICE系统为您分配的应用唯一标识符.
    • channelId: [可选]渠道标识符,APP如果分包发布到各个市场,需要填写JICE系统生成相应的渠道id,调用带channelId的getInstance或是在Manifest里
    • config:SDK 配置类,如果你想做一些自定义设置,可以移步自定义SDK配置查看更详细的说明.
    JiceSDK mJiceAPI = JiceSDK.getInstance(getApplicationContext(), new JiceConfig());

如果你的应用会分包发布到不同的市场需要各市场的数据分析,则在SDK初始化时需要填写JICE系统生成相应的渠道标识符id,我们支持两种方式配置渠道标识符。

  • AndroidManifest.xml文件的application节点下为应用配置channelId
<meta-data android:name="com.admaster.jicesdk.channelId" android:value="Jice网站生成的渠道标识id" /> <!--可选-->
  • 通过SDK代码初始化时配置channelId
getInstance(Context context, String appKey, String channelId,JiceConfig config)

恭喜,按照上述步骤,您已经完成了SDK的基础集成。

自定义SDK设置


SDK还支持一些自定义设置,例如发送监测数据包的网络策略等,如果有相关需求,可以在JiceSDK.getInstance(Context context, JiceConfig config)
时,通过实例化 JiceConfig类来控制相关策略。

  • API参数
    • isEventWifiOnly: 追踪事件的上报网络策略,可以设置为true或者false.默认值为false,代表在wifi或者(2/3/4G)网络下都进行上报。
    • isPushWifiOnly:推送活动展示的网络策略. 可以设置为true或者false.默认值为false,代表在wifi或者(2/3/4G)网络下都进行展示。
    • debugMode: 设置为调试模式,可以看到log输出,方便调试。
    • isOldUser: 设置设备已激活,标识用户是否在SDK使用前已经激活过设备,开发者如果设置为true,则后台不会再把这台设备算为新激活用户,默认为false。
    • pushServerURL: 支持私有化部署,设置推送下发的服务器地址,默认会发送到jice推送服务器地址。
    • trackServerURL: 支持私有化部署,设置事件上报的服务器地址,默认会发送到jice事件服务器地址。
JiceConfig(boolean isEventWifiOnly, boolean isPushWifiOnly, boolean debugMode, boolean isOldUser, String pushServerURL, String trackServerURL)
  • 示例
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    JiceSDK.getInstance(this, new JiceConfig(false,false,true,false,null,null));
    
    //如果不需要标识旧用户和私有化部署,可以使用三个参数的初始化函数
    //JiceSDK.getInstance(this, new JiceConfig(false, false, false));
    
}
    

广告归因转化事件监测集成


注册事件

监测一个来自用户注册的事件,当激活效果是由用户注册账号触发时,开发者需确保在用户注册成功之后调用此接口。

  • API 参数
    • userId : 用来确定用户唯一的id
    • properties : [可选] 事件属性
    trackRegisterEvent(String userId, JSONObject properties)
  • 示例:
    //无注册详情描述
    mJiceAPI.trackRegisterEvent("12011",null)
    
    //有注册详情描述,如注册昵称和年龄
    mJiceAPI.trackRegisterEvent("12011",
    properties:{"name" : "Jice",                                             
                 "age" : "9"})
    

登录事件

监测一个来自用户登录的事件。

  • API 参数
    • userId : 用来确定用户唯一的id
    • properties : [可选] 事件属性
    trackLoginEvent(String userId, JSONObject properties)
  • 示例:
    //无登录昵称描述                                                     
    mJiceAPI.trackLoginEvent("12012",null);
    
    //有登录昵称描述                                                         
    mJiceAPI.trackLoginEvent("12012",
    properties:{"name" : "Jice"});
    

自定义事件

如果您通过Conversion系统设置了带归因转化的自定义事件,则在需要埋点的地方调用此接口。

  • API 参数
    • customEvent : 用户自定义效果激活标示—唯一确定核对激活 标示
    • properties : [可选] 事件属性
trackConversionCustomEvent(CustomEvent customEvent,JSONObject properties)
                    
带归因转化的自定义事件枚举类  
public enum CustomEvent {

    ADCUSTOM1("adcustom1"),
    ADCUSTOM2("adcustom2"),
    ADCUSTOM3("adcustom3"),
    ADCUSTOM4("adcustom4"),
    ADCUSTOM5("adcustom5");

}

Google Referrer设置


如果您的应用需要发布到Google Play商店,并且需要来自该Store的转化分析,则需要如下配置。

  • google playservice设置(需要依赖google play service lib)
    在应用AndroidManifest.xml文件的application节点下添加如下声明:
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> 
  • Google Referrer配置
    • 方式一:如果您的应用中,只有JiceSDK用到了google referrer,则在manifest中添加以下的receiver即可
    <receiver
        android:name="com.admaster.jicesdk.api.JiceGoogleReferrerReceiver">
        <intent-filter>
        <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>
    • 方式二:如果您的应用中除了JiceSDK外,还有多个也用到了google referrer,则需要把以下代码放在其他有用到google referrer的插件包前:
    <receiver
        android:name="com.admaster.jicesdk.api.JiceGoogleMultReferrerReceiver">
        <intent-filter>
        <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>

混淆配置


如果您的项目使用了 Proguard 混淆打包,为了避免 SDK 被二次混淆导致无法使用,请在 proguard-project.txt 中添加以下代码:

-dontwarn com.admaster.**
-keep class com.admaster.** {
    *;
}