一:交互代码示例:
1、游戏内调用IOS方法
由于 Cocos iOS 侧通过 Objective-C 反射调用原生静态方法,所有 SDK 方法已封装在
FunSmithCocosBridge 类里,方法名与文档一致。
import { native, sys } from 'cc';
const CLASS = 'FunSmithCocosBridge';
function callStatic(method: string, ...args: any\[\]) {
if (sys.isNative && sys.os === sys.OS.IOS && native.reflection) {
native.reflection.callStaticMethod(CLASS, method, ...args);
} else {
console.warn('SdkBridge 非 iOS 原生环境,跳过', method);
}
}
1.1 无参数时
export const sdkInit = () => callStatic('SDKInit');
1.2 有参数时
iOS 方法名带参数时,方法名末尾需要带 :
export const sdkShowBanner = (json: string) => callStatic('SDKShowBanner:', json);
2、IOS 回调 游戏方法已在 桥接 文件里写好,方法名与文档一致,无需调整。
iOS 回调 Cocos 说明 :
iOS 桥接文件中已经统一封装了 SDK 回调逻辑。SDK 在原生侧产生异步结果后,会通过 Cocos JS 引擎回调游戏层的全局方法: window.FunSmithSdkCallback(methodName, data) 其中: - methodName:回调事件名 - data:回调数据字符串,通常为 JSON 字符串 游戏研发只需要在 Cocos 脚本初始化阶段注册 window.FunSmithSdkCallback,用于统一接收 SDK 回调。

二:播放广告流程
1、先调用检测广告SDKCheckAdReady接口,收到检测结果CheckAdReady回调。
2、根据返回的数据判断有广告时才调用播放广告接口,无广告时可以弹相关提示
3、收到播放广告成功ShowAdSuccess回调,发放奖励
4、收到播放广告失败ShowAdFail回调,可以弹相关提示
三:打包注意事项
1、自2026 年 4 月 28 日起,所有提审包硬性规则:
4.1 必须使用 Xcode 26 及以上版本
4.2 Unity Player Settings 里也要把 Minimum iOS Version 设置为 15
2、cocos导出xcode工程
3、因为IOS不能像安卓一样在demo里接好SDK,需要在游戏导出的xcode工程里对接,而且每次导出工程均需要重新对接一遍,强烈建议直接用脚本对接,脚本工具包如下(脚本用python写的,推荐 Python 3.9+ )

4、脚本执行方法:python3 cocos_ios_sdk.py文件路径 游戏导出的xcode工程路径 --resolve-packages(第一次对接需要拉取海外sdk的远程库资源,时间较久,第二次就会很快)
执行完成后打开xcode工程。(如果脚本接入异常看文章末尾)
5、接入完成后sdk资源如下

6、脚本接入完成后,桥接文件位置如下图,后期有需求变动,也是修改这俩文件(我会把修改好需求的桥接文件重新发一份,然后打开本地目录去替换,不要在工程里替换,不会自动引用)

7、真机测试:游戏导出的xcode工程(需要添加苹果账号才能安装)
然后选Team-下拉框-组织, (首次添加苹果账号,注意需要发行授予该账号developer权限,拉取签名信息)