SDK 集成
SDK 集成
此章节将演示如何集成ZJSDK到您的cocos creator项目中。
接入完成后,在正式上线前需要提供测试包,测试广告正常展现
测试信息
提示
SDK 不支持模拟器运行,需要使用真机调试
请联系运营人员获取正式的应用ID和广告位ID,测试广告位信息如下:
| 媒体ID | applicationId |
|---|---|
| Z2845395984 | com.zj.daylottery.addemo |
| 类型 | ID | 类型 | ID |
|---|---|---|---|
| 开屏广告 | J2190459774 | 激励广告 | J9378481911 |
| 半屏插屏 | J7208384505 | 全屏插屏 | J1556676069 |
注意
广告ID与包名是绑定关系,使用测试广告位信息时需要修改包名。
集成 SDK
SDK 需要在 cocos 项目中导入插件包,并在导出的原生工程中配置 build.gradle
导入插件包
将SDK压缩包内的 zjsdk_cocos_plug.zip 文件全部导入

配置 AndroidGradle
仓库和依赖
在导出的原生工程 module 中配置仓库与依赖
// module/build.gradle
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: 'com.android.application'
RES_PATH = RES_PATH.replace("\\", "/")
COCOS_ENGINE_PATH = COCOS_ENGINE_PATH.replace("\\", "/")
buildDir = "${RES_PATH}/proj/build/${project.name ==~ /^[_a-zA-Z0-9-]+$/ ? project.name : 'CocosGame'}"
/* 在此处添加仓库配置 */
rootProject.allprojects {
repositories {
maven {
credentials {
username '6409a2015d66d6f07e3b4611'
password '(F(8W_UPpBj6'
}
url 'https://packages.aliyun.com/maven/repository/2029504-snapshot-5MgYio'
}
maven {
url 'https://artifact.bytedance.com/repository/pangle'
}
maven {
url "https://jfrog.takuad.com/artifactory/china_sdk"
}
}
}
android {
// ...
}
dependencies {
// ...
/* 在此处添加 SDK 依赖项 */
// x5内核,如已引入,可忽略
implementation 'com.tencent.tbs:tbssdk:44286'
// 微信 OpenSdk ,建议引入,提高收益
implementation 'com.tencent.mm.opensdk:wechat-sdk-android:6.8.30'
// 设备OAID,如已引入,可忽略
implementation 'com.zj.zjsdk:oaid_sdk:1.0.25'
// SDK需要集成
implementation "com.squareup.okhttp3:okhttp:4.12.0"
implementation "com.squareup.okio:okio:3.6.0"
implementation "com.google.code.gson:gson:2.8.5"
// SDK包
implementation 'com.zj.zjsdk:zjsdk-cocos-bridge:2.5.61.61'
implementation 'com.qq.e.union:union:4.671.1541'
implementation 'com.zj.zjsdk:kssdk-ct:4.12.20.4'
implementation 'com.baidu:mobads:9.43.2'
// 2.4.16起穿山甲单独集成
implementation 'com.pangle.cn:mediation-sdk:7.4.2.1' // 融合SDK
implementation 'com.zj.zjsdk:wind-common:1.9.4'
implementation 'com.zj.zjsdk:wind-sdk:4.25.11'
implementation 'com.zj.zjsdk:beizi_fusion_sdk:5.2.3.10'
implementation 'com.zj.zjsdk:octopus_ad_c:2.6.1.23'
implementation 'com.zj.zjsdk:jy:2.0.125'
// Optional
// implementation "com.tanx:TanxUISDK:3.6.2"
implementation "com.zj.zjsdk:ms-sdk:3.0.4.0"
implementation "com.zj.zjsdk:qiming:2.2.6.3"
// Taku
implementation "com.anythink.sdk:core-taku:6.5.52"
implementation "com.anythink.sdk:adapter-taku-sdm:6.5.54.1.0"
implementation "com.smartdigimkttech.sdk:sdm-sdk-cn:6.5.54"
}
配置 gradle.properties
由于 Cocos 项目默认使用了 AndroidX,需要额外在build/android/proj/gradle.properties文件中增加一行配置
# ...
# 项目导出自带的配置
android.useAndroidX=true
# 新增这一行配置
android.enableJetifier=true
# 新增这一行配置
# ...
配置 AndroidManifest
在主 module->AndroidManifest.xml-><Application节点下添加以下组件配置
<!-- com.pangle.cn:mediation-sdk -->
<!--穿山甲Provider配置,移除穿山甲时需要同时删除以下配置,否则应用会在初始化时崩溃-->
<provider
android:name="com.bytedance.sdk.openadsdk.TTFileProvider"
android:authorities="${applicationId}.TTFileProvider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/zj_tt_file_paths" />
</provider>
<!--穿山甲Provider配置,移除穿山甲时需要同时删除以上配置,否则应用会在初始化时崩溃-->
<!-- com.pangle.cn:mediation-sdk -->
<!-- com.qq.e.union:union -->
<!-- 如果您打包 App 时的 targetSdkVersion>=24 -->
<!-- 为了让 SDK 能够正常下载、安装App类广告,必须按照下面的步骤做兼容性处理。 -->
<provider
android:name="com.qq.e.comm.GDTFileProvider"
android:authorities="${applicationId}.gdt.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/gdt_file_path" />
</provider>
<!-- com.qq.e.union:union -->
<!-- com.beizi.fusion:sdk -->,
<!-- 如果项目中已经存在FileProvider,则将beizi_file_path.xml文件中的内容拷贝到自己项目中xml文件中即可 -->
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/beizi_file_path" />
</provider>
<!-- com.beizi.fusion:sdk -->
android:label 冲突
请在主 module->AndroidManifest.xml-><Application节点下添加android:lable="YOUR_LABEL"配置,然后追加tools:replace="android:label配置以覆盖
如果提示找不到 tools 的 NS,在<Manifest节点追加xmlns:tools="http://schemas.android.com/tools"
android:allowBackup 冲突
请在主 module->AndroidManifest.xml-><Application节点下添加android:allowBackup="YOUR_STRATEGY"配置,然后追加tools:replace="android:allowBackup配置以覆盖
如果提示找不到 tools 的 NS,在<Manifest节点追加xmlns:tools="http://schemas.android.com/tools"