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("开屏广告关闭")
        // 广告关闭后的处理,比如进入主界面
    }
}
相关推荐
AI云海4 小时前
iOS 多 Target 打包、UAT/生产测试与上架 App Store 全流程指南
ios
阿里超级工程师6 小时前
最新快速申请ios打包证书和profile文件步骤
ios·打包证书
2501_9159090610 小时前
iOS 应用反调试技详解术 检测调试器的原理与防护实践
android·ios·小程序·https·uni-app·iphone·webview
游戏开发爱好者811 小时前
TraceEagle 代理抓包详解,无感代理、去证书绑定与 HTTP/3 解密能力解析
网络协议·计算机网络·网络安全·ios·adb·https·udp
aiopencode12 小时前
SwiftUI Introspect生产环境完全指南:为什么它是安全可靠的选择
后端·ios
for_ever_love__13 小时前
iOS: 网络管理单例
学习·ios·objective-c
00后程序员张14 小时前
iOS加固技术路线全面解析:Bitcode模式、源码模式与汇编模式对比及爱加密优势
android·汇编·ios·小程序·uni-app·cocoa·iphone
起司喵喵14 小时前
Flutter-MacOS桌面OS系统|flutter.+window_manager客户端OS模板
flutter·macos·策略模式
代码对我眨眼睛14 小时前
macOS Google Chrome 常用快捷键
前端·chrome·macos
啊真真真14 小时前
macOS下libnfc ..写卡失败问题及解决方案
macos·策略模式