SDK 初始化

SDK 初始化

此章节将演示如何在Cocos项目中初始化ZJSDK

初始化与启动

在进入应用后,通过ZJSdk类的静态方法初始化 SDK

初始化分为ZJSdk#initWithoutStart(ZJConfig);方法与ZJSdk#start(ZJStartListener)两个方法。

两个方法需要按顺序调用,先调用initWithoutStart方法配置初始化的信息,再在用户同意隐私政策后调用start方法启动SDK,并确保启动成功后再请求广告。

方法参数说明
initWithoutStart(ZJConfig config)config: 初始化配置信息配置初始化信息,可以在用户同意隐私政策前调用
start(ZJStartListener listener)listener: 初始化状态回调启动SDK,需要在用户同意隐私政策后尽快调用

ZJConfig 说明

ZJConfig 为 SDK 的初始化信息配置

属性类型说明必填默认值
appIdstring媒体ID-
userIdstring用户唯一ID×""
customControllerZJCustomController隐私控制
参照 隐私信息控制
×null
isDebugbool是否为调试模式
调试模式,会输出调试日志
×false
ageint用户年龄,仅针对海外市场
age 需要大于0
×0
gdprintGDPR授权,仅针对海外市场
-1为未知
0为用户未授权
1为用户授权
×-1
coppaintCOPPA授权,仅针对海外市场
-1为未知
0为成人
1为儿童
×-1
ccpaintCCPA授权,仅针对海外市场
-1为未知
0为允许出售
1为不允许出售
×-1

初始化示例

Demo->scripts/demo/DemoMainPanel.ts
private initZJSDK() {
    // 构建配置,可以在用户同意隐私政策前
    ZJSdk.initWithoutStart(new ZJConfig("Z2845395984", "Your UID", true, CustomController.getInstance().customController));
    // 启动SDK,需要在同意隐私政策后
    ZJSdk.start({
        onStartFailed(code, msg) {
            console.log(`onStartFailed:${code}-${msg}`);
            toast(`初始化失败,错误码:${code},错误信息:${msg}`)
        }, onStartSuccess() {
            console.log("onStartSuccess");
            toast("初始化成功")
        }
    })
}

示例工程

压缩包内的zjsdk_cocos_demo.zip包含了一个基础的SDK功能演示场景与对应的广告加载、展示示例代码:

演示页面广告加载
DemoDemo

其中 Android 原生的 ToastUtil 方法,需要手动添加在项目中(如native/engine/andriod/src/目录下),没有 package

import android.app.Activity;
import android.widget.Toast;

import com.cocos.service.SDKWrapper;

class ToastUtil {

    public static void showToast(String msg) {
        Activity activity = SDKWrapper.shared().getActivity();
        if (activity != null && !activity.isFinishing()) {
            activity.runOnUiThread(() -> Toast.makeText(activity, msg, Toast.LENGTH_SHORT).show());
        }
    }

}