4399 APK 适配器
4399 APK 适配器通过 jsb.reflection 调用 Android 原生 Java 层 API,提供初始化和登录功能。适用于 4399 平台的 Android 原生包渠道。
类定义
ts
import { M4399Sdk } from "@lingames/clever-sdk/src/platformNative/M4399Sdk.js";
const sdk = new M4399Sdk(platform, project_id, game_id);- 依赖环境:
jsb(Cocos Creator 原生环境)、cc - Java 桥接类:
com/lingames/sdk/m4399/M4399Bridge - 继承:
CleverSdk
初始化
ts
interface m4399Initialize {
sdk_login_url?: string;
}
await sdk.initialize({
sdk_login_url: "https://api.salesagent.cc/game-analyzer/player/login"
});初始化流程:
- 检查
jsb对象是否存在,不存在则返回false - 通过
jsb.reflection.callStaticMethod调用 Java 层M4399Bridge.init()方法 - 传入
game_id和sdk_key参数
参考: 4399 开放平台文档
登录
ts
const data = await sdk.login();登录流程:
- 通过
jsb.reflection.callStaticMethod调用 Java 层M4399Bridge.login()方法 - Java 层登录成功后调用
window.onM4399LoginSuccess(data)回调,传入 JSON 字符串 - SDK 解析 JSON 返回登录数据
- Java 层登录失败时调用
window.onM4399LoginFail(error)回调
回调函数:
| 回调 | 参数 | 说明 |
|---|---|---|
window.onM4399LoginSuccess | data: string | 登录成功,JSON 字符串格式的登录数据 |
window.onM4399LoginFail | error: string | 登录失败原因 |
不支持的功能
4399 APK 适配器未实现以下功能,调用时使用基类默认行为:
checkSession()— 继承基类playRewardedVideo()— 继承基类createBannerAd()/showBannerAd()/hideBannerAd()/destroyBannerAd()— 继承基类shareAppMessage()— 继承基类addShortcut()/checkShortcut()— 继承基类addCommonUse()/checkCommonUse()— 继承基类checkScene()/navigateToScene()— 继承基类getUserInfo()— 继承基类reportEvent()— 继承基类