Skip to content
On this page

sdk接入

1.cocoapods方式

pod 'BQADSDK'

2.手动方式

1.获取framework文件后直接将{BQAdSDK}文件拖入工程即可。

*升级SDK的同学必须同时更新framework和bundle文件,否则可能出现部分页面无法展示的问题.

*拖入完请确保Copy Bundle Resources中有BUAdSDK.bundle否则可能出现icon图片加载不出来的情况。

2.导入系统依赖库

需要引入的系统库

找到Link Binary With Libraries,点击“+”,依次添加下列依赖库

系统库名称
Accelerate.framework
AdSupport.framework
AppTrackingTransparency
AudioToolbox.framework
AVFoundation.framework
CoreGraphics.framework
CoreImage.framework
CoreLocation.framework
CoreMedia.framework
CoreMotion.framework
CoreTelephony.framework
CoreText.framework
ImageIO.framework
JavaScriptCore.framework
MapKit.framework
MediaPlayer.framework
MobileCoreServices.framework
QuartzCore.framework
Security.framework
StoreKit.framework
SystemConfiguration.framework
UIKit.framework
WebKit.framework
DeviceCheck.framework
libbz2.tbd
libc++.tbd
libiconv.tbd
libresolv.9.tbd
libsqlite3.tbd
libxml2.tbd
libz.tbd
libc++abi.tbd

3.Build设置 Build Settings中Other Linker Flags 增加参数-ObjC、 -l"c++"、 -l"c++abi" 、-l"sqlite3"、-l"z" ,字母o和c大写。
Build Settings 中设置 Enable Bitcode 设置为 NO

项目工程中添加权限

1.⼯程plist⽂件设置,点击右边的information Property List后边的 "+" 展开
2.添加 App Transport Security Settings,先点击左侧展开箭头,再点右侧加号,Allow Arbitrary Loads 选项⾃动加⼊

<key>NSAppTransportSecurity</key>
  <dict>
     <key>NSAllowsArbitraryLoads</key>
   <true/>
</dict>

关于 iOS 14 AppTrackingTransparency

从iOS 14.5开始,只有在获得用户明确许可的前提下,应用才可以访问用户的IDFA数据并向用户投放定向广告。在应用程序调用 App Tracking Transparency 框架向最终用户提出应用程序跟踪授权请求之前,IDFA将不可用。如果某个应用未提出此请求,则读取到的IDFA将返回全为0的字符串。

1.获取 ATT 权限,请更新您的 Info.plist,添加 NSUserTrackingUsageDescription 字段和自定义文案描述。代码示例:

<key>NSUserTrackingUsageDescription</key>
<string>需要获取您设备的广告标识符,以为您提供更好的广告体验</string>

2.向用户申请权限时,请调用 requestTrackingAuthorizationWithCompletionHandler:方法。我们建议您申请权限后再请求广告,以便广告能准确的获得用户授权状态。

#import <AppTrackingTransparency/AppTrackingTransparency.h>
#import <AdSupport/AdSupport.h>
- (void)requestIDFA {
  [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
    // [self loadAd];
  }];
}

iOS 15.0 中,如果是在启动方法中调用授权,不会弹出授权提示框,可以参考:https://juejin.cn/post/7018126149553225741

广告SDK的初始化

1.Objective-C

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [BQADSDK initSdk:@"bq_ios123"];
  return YES;
}

2.Swift

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    BQADSDK.initSdk("bq_ios123")
    return true
}

相关广告接入方式说明

广告接入具体示范可以参照 BQSDKAdDemo