ios接入穿山甲【Swift】

1.可接入的广告,点击右下角查看接入文档

https://www.csjplatform.com/union/media/union/download/groMore

2.进入接入文档,选择最新版本进行接入

c 复制代码
    pod 'Ads-CN-Beta','6.8.0.2'
    pod 'GMGdtAdapter-Beta', '4.15.22.0'
    pod 'GDTMobSDK','4.15.30'
    pod 'KSAdSDK','3.3.74.0'
    pod 'GMKsAdapter-Beta', '3.3.74.0'

3.配置

按照要求进行配置

https://www.csjplatform.com/union/media/union/download/detail?id=197\&docId=27487\&locale=zh-CN\&osType=ios

4.初始化sdk

Header中加入#import <BUAdSDK/BUAdSDK.h>

swift 复制代码
import BUAdSDK // 确保在桥接文件中正确引入

func setupTTSDK() {
    let configuration = BUAdSDKConfiguration()
    
    // 设置APPID(替换为你的应用ID)
    configuration.appID = "*****"
    
    // 调试日志开关(注意类型转换)
    configuration.debugLog = NSNumber(value: true)
    
    // 聚合配置
    configuration.useMediation = true
    
    // 隐私合规配置
    configuration.mediation.limitPersonalAds = 0 // 直接使用 Int 类型
    configuration.mediation.limitProgrammaticAds = 0
    configuration.mediation.forbiddenCAID = 0
    
    // 修正初始化方法
    BUAdSDKManager.start(syncCompletionHandler: { success, error in
        if success {
            print("穿山甲SDK初始化成功")
            DispatchQueue.main.async {
                // 可以在这里开始请求广告
            }
        } else if let error = error {
            print("穿山甲SDK初始化失败: \(error.localizedDescription)")
        }
    })
}

AppDelegate

swift 复制代码
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
     setupTTSDK()
     return
     }

5.调用开屏广告

swift 复制代码
import BUAdSDK

class TestVC: BaseViewController {
    private var splashAd: BUSplashAd?
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        loadSplashAd()
        }
    
    private func loadSplashAd() {
        let slotId = "103***697" // 替换为你的实际广告位ID
        let splashAd = BUSplashAd(slotID: slotId, adSize: view.bounds.size)
        splashAd.delegate = self
        splashAd.loadData()
        self.splashAd = splashAd
    }
}

extension AppWidgetVC: BUSplashAdDelegate {
    func splashAdLoadSuccess(_ splashAd: BUSplashAd) {
        self.splashAd?.showSplashView(inRootViewController: self)

    }
    
    func splashAdLoadFail(_ splashAd: BUSplashAd, error: BUAdError?) {
        
        print(error)
    }
    
    
    func splashAdRenderSuccess(_ splashAd: BUSplashAd) {}
    
    func splashAdRenderFail(_ splashAd: BUSplashAd, error: BUAdError?) {}
    
    func splashAdWillShow(_ splashAd: BUSplashAd) {
        // 广告即将展示时的处理,例如隐藏启动图
    }
    
    func splashAdDidShow(_ splashAd: BUSplashAd) {}
    
    func splashAdDidClick(_ splashAd: BUSplashAd) {}
    
    func splashAdDidClose(_ splashAd: BUSplashAd, closeType: BUSplashAdCloseType) {}
    
    func splashAdViewControllerDidClose(_ splashAd: BUSplashAd) {}
    
    func splashDidCloseOtherController(_ splashAd: BUSplashAd, interactionType: BUInteractionType) {}
    
    func splashVideoAdDidPlayFinish(_ splashAd: BUSplashAd, didFailWithError error: (any Error)?) {}
    
    func splashAdDidLoad(_ splashAd: BUSplashAd) {
        print("开屏广告加载成功")
    }
    
    func splashAd(_ splashAd: BUSplashAd, didFailWithError error: Error?) {
        print("开屏广告加载失败: \(error?.localizedDescription ?? "")")
        // 加载失败后的处理,比如显示默认启动图或进入主界面
    }
    
    func splashAdDidClose(_ splashAd: BUSplashAd) {
        print("开屏广告关闭")
        // 广告关闭后的处理,比如进入主界面
    }
}
相关推荐
yuanyxh1 天前
macOS 应用 - 纯对话生成
前端·macos·ai编程
AI创界者3 天前
PilotTTS 一键整合包(Win/Mac):8G 显存畅跑,实测解锁情绪与副语言的精准控制
人工智能·macos·aigc·音视频
AirDroid_cn3 天前
系统终端与iTerm2字体看起来不一样?macOS Sequoia统一渲染指南
macos
初级代码游戏3 天前
easy Photo Clean公测版:快速清理iPhone照片 邀请公测
ios·iphone
库奇噜啦呼3 天前
【iOS】RunLoop学习
学习·ios
黑科技iOS上架3 天前
iOS应用周末提交什么情况算卡审
经验分享·ios
JiaWen技术圈4 天前
2026 年的 macOS 磁盘清理方法
macos
lichong9514 天前
让AI自己用电脑!Cua:后台操作鼠标键盘,Mac/Windows/Linux全支持
人工智能·macos·ai·计算机外设·agent·提示词
A尘埃4 天前
批处理命令(Linux/Mac、Windows项目启动脚本)
linux·windows·macos