更新记录

1.0.3(2024-08-16)

巨量引擎转化融合归因优化方案接入手册V2.0 巨量iOS SDK已更新为融合归因SDK

1.0.2(2024-07-02)

修复插件无法使用问题 const module = uni.requireNativePlugin("JQ-RangersAppLog-AppModule")

1.0.1(2024-04-01)

新版本发布 完全对接巨量广告iOS端SDK 最新 RangersAppLog 6.10.2 小白直接查看巨量SDK事件管理iOS SDK文档也可上手

查看更多

平台兼容性

Android iOS
× 适用版本区间:12 - 17

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。 iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择

插件介绍

测试了iOS所有流程完全可用(包括打包真机appstore正式上架),并且api与iOS文档一致,直接看iOS也可上手

1. 该插件封装了巨量广告移动应用SDK iOS sdk,SDK版本号为最新的融合归因SDK V2 巨量引擎转化融合归因优化方案
2. 实现了巨量引擎转化SDK中的所有事件。

巨量广告iOS sdk 文档地址: iOS SDK地址

巨量广告移动应用SDK 官网文档:https://open.oceanengine.com/labels/7/docs/1696710651039744

注意事项

1. 本人有测试账号并且对接了iOS sdk文档所有api 亲测有效!使用非常简单参考iOS文档就可以直接使用
2. 提供demo可进行iOS真机打包,并且有所有api教程

巨量广告移动应用SDK巨量引擎转化融合归因优化 官网文档:

使用

  • 使用方式完全跟巨量iOS sdk文档一样 并且我也提供了工具函数,可以直接可以使用 我提供两种方式 可以参考我提供的demo

    • 直接使用 初始化

    • 4.2.1.2SDK使用方式(必要)

    • 启动事件上报

    //1.获取插件类
    const module = uni.requireNativePlugin("JQ-RangersAppLog-AppModule")
    
    //启动事件上报 可以通过下面三种方式任意一种方案
    //1 通过uid 其他选项安装iOS sdk中默认选项初始化 uid 是业务内部的用户uid,非必传。如果传了后续巨量可根据uid做相关逻辑,比如uid维度的去重)
    module.configAppUid('0000')
    
    //2. 通过configApp传入{}对应的配置选项初始化 如下面:
    module.configApp({
    uid:'你的uid',
    //其他用户自定义参数
    channel:'App Store'
    })
    
    //3.通过setupAppLog
    module.setupAppLog({
    'uid': '625692',
    'channel': 'App Store',
    'abEnable': true,
    'autoTrackEnabled': true,
    'showDebugLog': true,
    'clearABCacheOnUserChange': true,
    'logNeedEncrypt': true,
    'gameModeEnable': true
    }, (cal : string) => {
        console.log(cal);
    })
    • 上报成功验证 启动事件上报成功后会打印console日志 已成功接入sdk具体信息可在官方检测查看 xxx...

    • 获取IDFA SDK内部,IDFA的获取,使用了开关来控制。默认不获取IDFA,如果需要获取IDFA的话,可以通过以下方式进行设置

      module.enableIdfa(true) 
    • Deeplink clickid采集 (插件已实现clickid采集)

    • 4.2.1.4 隐私数据获取说明 以下用户数据由巨量引擎数据采集 iOS SDK收集,具体参数如下 参考文档: sdk文档地址

    • 4.2.1.5 其他功能 延时上报

      // 开启延时上报
      module.enableDelayUpload()
      //允许数据上报
      module.startSendingEvents()

      获取clickid

      module.getClickId()
    • 可选参数采集

      //注意 官方sdk kBDADSignalSDKUserUniqueId 与 插件uid key是一致的 参加进入插件后会把uid转换为kBDADSignalSDKUserUniqueId
      module.registerWithOptionalData({
      uid : '3y48693232',  // uid(是业务内部的用户uid,非必传。如果传了后续巨量可根据uid做相关逻辑,比如uid维度的去重)
      extra_param : 'xxx',                     // 其他用户自定义参数
      })
    • 自定义事件上报(可选) 注册、purchase:支付

      
      //注册
      module.registerEvent({name:'xxx'})
      //付费
      module.purchaseEvent({type: '电子商品',
          name: 'imac一体机',
          contentID: '543309',
          number: 1,
          channel: 'wechat',
          currency: '¥',
          amount: 9000,
          isSuccess: true})
    
    - 自定义事件上报 (通过自定义上报也可实现调用 注册/支付/停留时长 行为 需要实现event_id对应 sdk中的事件名字)
    
    ```vue3
    //event_id为事件名字 
    module.trackEssentialEvent({
            event_id:'purchase', //这里的purchase对应 支付
            type: '电子商品',
            name: 'imac一体机',
            contentID: '543309',
            number: 1,
            channel: 'wechat',
            currency: '¥',
            amount: 9000,
            isSuccess: true})
    
    module.trackEssentialEvent({
        event_id:'stay_time', //这里的stay_time对应 停留时长
        type: 'xxx',
        name: 'xxx一体机',
        })
    //自定义事件上报使用
    module.trackEssentialEvent({
    event_id:'xxx', 
    type: 'xxx',
    })

    注意:广告主需要额外从客户端采集:IDFV、clickid(通过SDK提供的接口获取,如果已经在使用deeplink可以添加CLICKID宏参会自动拼接)

    • IDFA参考上面文档(默认不开启) clickid默认已集成
    • 注意:其他的iOS sdk文档的api与我们写的插件都是保持一致的

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件使用的 巨量SDK上报数据 会采集数据,详情可参考:https://bytedance.larkoffice.com/docx/CgYBdVzoBogND2xv7PhcSfFNnyc 巨量引擎转化SDK开发者使用合规规范:https://bytedance.larkoffice.com/docx/IuNld5X23o9ehbxwrhXc6QLbnZc 上报成功验证 启动事件上报成功后会打印console日志,参见Utilities/BDASignalUtility.m

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问