In order to enhance the integration experience, we have made substantial modifications to the interface in version 4600 and adopted a new set of integration methods. This document serves as a comprehensive interface comparison guide for upgrading from the prior version to version 4600. For further integration details, please refer to the detailed document below. If you require assistance with integrating versions prior to 4600, please refer to the old integration document.
4500 | 4600 |
BUAdSDKConfiguration | PAGConfig |
+ configuration; | + shareConfig; |
@property (nonatomic, assign) BUAdSDKTerritory territory; | N/A |
@property (nonatomic, copy) NSString *appID; | @property (nonatomic, copy) NSString *appID; |
@property (nonatomic, copy) NSString *secretKey; | N/A |
@property (nonatomic, assign) BUAdSDKLogLevel logLevel; | N/A |
@property (nonatomic, assign) BUAdSDKAgeGroup ageGroup; | N/A |
@property (nonatomic, strong) NSNumber *coppa; | @property (nonatomic, assign) PAGChildDirectedType childDirected; |
@property (nonatomic, copy) NSString *userExtData; | @property (nonatomic, copy) NSString *userDataString; |
@property (nonatomic, assign) BUOfflineType webViewOfflineType; | N/A |
@property (nonatomic, strong) NSNumber *GDPR; | @property (nonatomic, assign) PAGGDPRConsentType GDPRConsent; |
@property (nonatomic, strong) NSNumber *CCPA; | @property (nonatomic, assign) PAGDoNotSellType doNotSell; |
@property (nonatomic, strong) NSNumber *debugLog; | @property (nonatomic, assign) BOOL debugLog; |
@property (nonatomic, strong) NSNumber *themeStatus; | @property (nonatomic, assign) PAGAdSDKThemeStatus themeStatus; |
@property (nonatomic, strong) NSArray<NSNumber *> *abvids; | N/A |
@property (atomic, copy) NSString *abSDKVersion; | N/A |
@property (nonatomic, copy) NSString *customIdfa; | N/A |
@property (nonatomic, assign) BOOL allowModifyAudioSessionSetting; | N/A |
@property (nonatomic, assign) BOOL unityDeveloper; | N/A |
@property (nonatomic, strong) id<BUAdSDKPrivacyProvider> privacyProvider; | N/A |
@property (nonatomic, strong, nullable) UIImage *appLogoImage; | N/A |
@property (nonatomic, assign) BOOL SDKDEBUG; | N/A |
4500 | 4600 |
BUAdSDKManager | PAGSdk |
@property (nonatomic, copy, readonly, class) NSString *SDKVersion; | @property (nonatomic, copy, readonly, class) NSString *SDKVersion; |
@property (nonatomic, assign, readonly, class) BUAdSDKInitializationState initializationState; | @property (nonatomic, assign, readonly, class) PAGSDKInitializationState initializationState; |
+ (void)startWithSyncCompletionHandler:(BUCompletionHandler)completionHandler; | N/A |
+ (void)startWithAsyncCompletionHandler:(BUCompletionHandler)completionHandler; | + (void)startWithConfig:(PAGConfig *)config completionHandler:(nullable PAGAdsCompletionHandler)completionHandler; |
+ (void)openGDPRPrivacyFromRootViewController:(UIViewController *)rootViewController confirm:(BUConfirmGDPR)confirm; | N/A |
+ (void)setTerritory:(BUAdSDKTerritory)territory; | N/A |
+ (void)setAppID:(NSString *)appID; | N/A |
+ (void)setSecretKey:(NSString *)secretKey; | N/A |
+ (void)setLoglevel:(BUAdSDKLogLevel)level; | N/A |
+ (void)setAgeGroup:(BUAdSDKAgeGroup)ageGroup; | N/A |
+ (void)setCoppa:(NSInteger)coppa; | N/A |
+ (void)setUserKeywords:(NSString *)keywords; | N/A |
+ (void)setUserExtData:(NSString *)data; | @property (nonatomic, copy) NSString *userDataString; |
+ (void)setOfflineType:(BUOfflineType)type; | N/A |
+ (void)setGDPR:(NSInteger)GDPR; | N/A |
+ (void)setCCPA:(NSInteger)CCPA; | N/A |
+ (void)setABVidArray:(NSArray<NSNumber *> *)abvids; | N/A |
+ (void)setABSDKVersion:(NSString *)abSDKVersion; | N/A |
+ (void)setCustomIDFA:(NSString *)idfa; | N/A |
+ (void)setThemeStatus:(BUAdSDKThemeStatus)themeStatus; | N/A |
+ (NSString *)appID; | N/A |
+ (NSInteger)GDPR; | N/A |
+ (NSInteger)coppa; | N/A |
+ (NSInteger)CCPA; | N/A |
+ (void)allowModifyAudioSessionSetting:(BOOL)isAllow; | N/A |
+ (BUAdSDKThemeStatus)themeStatus; | N/A |
- (void)setAdMarkup:(NSString *)adm; | PAGRequest : /// Ad string that represents an ad response. The SDK will render this ad and ignore all other /// targeting information set on this request. @property (nonatomic, copy) NSString *adString; |
- (void)setMopubAdMarkUp:(NSString *)adm; | N/A |
+ (nullable NSDictionary *)AdTypeWithRit:(NSString *)rit error:(NSError **)error; | N/A |
+ (NSDictionary *)AdTypeWithAdMarkUp:(NSString *)adm; | N/A |
+ (NSString *)mopubBiddingToken; | + (NSString *)getBiddingToken:(nullable NSString *)slotID; |
+ (NSString *)getBiddingToken:(nullable NSString *)slotID; |
4500 | 4600 |
BUNativeAd | PAGLNativeAd |
@property (nonatomic, strong, readwrite, nullable) BUAdSlot *adslot; | N/A |
@property (atomic, strong, readonly, nullable) BUMaterialMeta *data; | @property (nonatomic, strong, readonly) PAGLMaterialMeta *data; |
@property (nonatomic, weak, readwrite, nullable) id<BUNativeAdDelegate> delegate; | @property (nonatomic, weak, nullable) id<PAGLNativeAdDelegate> delegate; |
@property (nonatomic, weak, readwrite) UIViewController *rootViewController; | @property (nonatomic, weak) UIViewController *rootViewController; |
- (instancetype)initWithSlot:(BUAdSlot *)slot; | N/A |
- (void)registerContainer:(__kindof UIView *)containerView withClickableViews:(NSArray<__kindof UIView *> *_Nullable)clickableViews; | - (void)registerContainer:(__kindof UIView *)containerView withClickableViews:(NSArray<__kindof UIView *> *_Nullable)clickableViews; |
- (void)unregisterView; | - (void)unregisterView; |
- (void)loadAdData; | + (void)loadAdWithSlotID:(NSString *)slotID request:(PAGNativeRequest *)request completionHandler:(PAGNativeADLoadCompletionHandler)completionHandler; |
- (NSString *)getAdCreativeToken; | N/A |
4500 | 4600 |
BUNativeAdDelegate | PAGLNativeAdDelegate |
- (void)nativeAdDidLoad:(BUNativeAd *)nativeAd; | PAGNativeADLoadCompletionHandler |
- (void)nativeAdDidLoad:(BUNativeAd *)nativeAd view:(UIView *_Nullable)view; | |
- (void)nativeAd:(BUNativeAd *)nativeAd didFailWithError:(NSError *_Nullable)error; | |
- (void)nativeAdDidBecomeVisible:(BUNativeAd *)nativeAd; | - (void)adDidShow:(id<PAGAdProtocol>)ad; |
- (void)nativeAdDidCloseOtherController:(BUNativeAd *)nativeAd interactionType:(BUInteractionType)interactionType; | N/A |
- (void)nativeAdDidClick:(BUNativeAd *)nativeAd withView:(UIView *_Nullable)view; | - (void)adDidClick:(id<PAGAdProtocol>)ad; |
- (void)nativeAd:(BUNativeAd *_Nullable)nativeAd dislikeWithReason:(NSArray<BUDislikeWords *> *_Nullable)filterWords; | - (void)adDidDismiss:(id<PAGAdProtocol>)ad; |
- (void)nativeAd:(BUNativeAd *_Nullable)nativeAd adContainerViewDidRemoved:(UIView *)adContainerView; |
4500 | 4600 |
BUNativeAdRelatedView | PAGNativeAdRelatedView |
@property (nonatomic, strong, readonly, nullable) UIButton *dislikeButton; | @property (nonatomic, strong, readonly) UIButton *dislikeButton; |
@property (nonatomic, strong, readonly, nullable) UILabel *adLabel; | @property (nonatomic, strong, readonly) PAGMediaView *mediaView; |
@property (nonatomic, strong, readonly, nullable) UIImageView *logoImageView; | |
@property (nonatomic, strong, readonly, nullable) BUVideoAdView *videoAdView; | |
@property (nonatomic, strong, readonly, nullable) UIImageView *logoADImageView; | @property (nonatomic, strong, readonly) UIImageView *logoADImageView; |
@property (nonatomic, strong, readonly, nullable) id<BUVideoAdReportor> videoAdReportor; | N/A |
- (void)refreshData:(BUNativeAd *)nativeAd; | - (void)refreshWithNativeAd:(PAGLNativeAd *)nativeAd; |
4500 | 4600 |
BUNativeExpressBannerView | PAGBannerAd |
@property (nonatomic, weak, nullable) id<BUNativeExpressBannerViewDelegate> delegate | @property (nonatomic, weak, nullable) id<PAGBannerAdDelegate> delegate |
N/A | @property (nonatomic, strong, readonly) UIView *bannerView |
@property (nonatomic, assign, readonly) NSInteger interval | N/A |
@property (nonatomic, copy, readonly) NSDictionary *mediaExt | N/A |
- (instancetype)initWithSlotID:(NSString *)slotIDrootViewController:(UIViewController *)rootViewControlleradSize:(CGSize)adsize | N/A |
- (instancetype)initWithSlotID:(NSString *)slotIDrootViewController:(UIViewController *)rootViewControlleradSize:(CGSize)adsizeinterval:(NSInteger)interval | N/A |
- (instancetype)initWithSlot:(BUAdSlot *)slotrootViewController:(UIViewController *)rootViewControlleradSize:(CGSize)adsize | N/A |
- (instancetype)initWithSlot:(BUAdSlot *)slotrootViewController:(UIViewController *)rootViewControlleradSize:(CGSize)adsizeinterval:(NSInteger)interval | N/A |
N/A | @property (nonatomic, weak, readwrite) UIViewController *rootViewController |
- (void)loadAdData | + (void)loadAdWithSlotID:(NSString *)slotIDrequest:(PAGBannerRequest *)requestcompletionHandler:(PAGBannerADLoadCompletionHandler)completionHandler |
- (NSString *)getAdCreativeToken | N/A |
4500 | 4600 |
BUNativeExpressBannerViewDelegate | PAGBannerAdDelegate |
- (void)nativeExpressBannerAdViewWillBecomVisible:(BUNativeExpressBannerView *)bannerAdView | - (void)adDidShow:(id<PAGAdProtocol>)ad |
- (void)nativeExpressBannerAdViewDidClick:(BUNativeExpressBannerView *)bannerAdView | - (void)adDidClick:(id<PAGAdProtocol>)ad |
- (void)nativeExpressBannerAdViewDidRemoved:(BUNativeExpressBannerView *)bannerAdVie | - (void)adDidDismiss:(id<PAGAdProtocol>)ad |
- (void)nativeExpressBannerAdViewDidLoad:(BUNativeExpressBannerView *)bannerAdView | N/A |
- (void)nativeExpressBannerAdView:(BUNativeExpressBannerView *)bannerAdView didLoadFailWithError:(NSError *_Nullable)error | N/A |
- (void)nativeExpressBannerAdViewRenderSuccess:(BUNativeExpressBannerView *)bannerAdView | N/A |
- (void)nativeExpressBannerAdViewRenderFail:(BUNativeExpressBannerView *)bannerAdView error:(NSError * __nullable)error | N/A |
- (void)nativeExpressBannerAdView:(BUNativeExpressBannerView *)bannerAdView dislikeWithReason:(NSArray<BUDislikeWords *> *_Nullable)filterwords | N/A |
- (void)nativeExpressBannerAdViewDidCloseOtherController:(BUNativeExpressBannerView *)bannerAdView interactionType:(BUInteractionType)interactionType | N/A |
4500 | 4600 |
BUFullscreenVideoAd | PAGLInterstitialAd |
@property (nonatomic, weak, nullable) id<BUFullscreenVideoAdDelegate> delegate; | @property(nonatomic, weak, nullable) id<PAGLInterstitialAdDelegate> delegate; |
@property (nonatomic, copy, readonly) NSDictionary *mediaExt; | N/A |
@property (nonatomic, assign, readonly) BOOL materialMetaIsFromPreload; | N/A |
@property (nonatomic, assign, readonly) NSTimeInterval expireTimestamp; | N/A |
- (instancetype)initWithSlotID:(NSString *)slotID; | N/A |
- (instancetype)initWithSlot:(BUAdSlot *)slot; | N/A |
- (void)loadAdData; | + (void)loadAdWithSlotID:(NSString *)slotIDrequest:(PAGInterstitialRequest *)requestcompletionHandler:(PAGInterstitialAdLoadCompletionHandler)completionHandler; |
- (NSString *)getAdCreativeToken; | N/A |
- (BOOL)showAdFromRootViewController:(UIViewController *)rootViewController; | - (void)presentFromRootViewController:(UIViewController *)rootViewController; |
- (BOOL)showAdFromRootViewController:(UIViewController *)rootViewController ritSceneDescribe:(NSString *_Nullable)sceneDescirbe; | |
- (NSTimeInterval)getExpireTimestamp; | N/A |
4500 | 4600 |
BUFullscreenVideoAdDelegate | PAGLInterstitialAdDelegate |
- (void)fullscreenVideoMaterialMetaAdDidLoad:(BUFullscreenVideoAd *)fullscreenVideoAd; | N/A |
- (void)fullscreenVideoAd:(BUFullscreenVideoAd *)fullscreenVideoAd didFailWithError:(NSError *_Nullable)error; | N/A |
- (void)fullscreenVideoAdVideoDataDidLoad:(BUFullscreenVideoAd *)fullscreenVideoAd; | N/A |
- (void)fullscreenVideoAdWillVisible:(BUFullscreenVideoAd *)fullscreenVideoAd; | N/A |
- (void)fullscreenVideoAdDidVisible:(BUFullscreenVideoAd *)fullscreenVideoAd; | - (void)adDidShow:(id<PAGAdProtocol>)ad; |
- (void)fullscreenVideoAdDidClick:(BUFullscreenVideoAd *)fullscreenVideoAd; | - (void)adDidClick:(id<PAGAdProtocol>)ad; |
- (void)fullscreenVideoAdWillClose:(BUFullscreenVideoAd *)fullscreenVideoAd; | N/A |
- (void)fullscreenVideoAdDidClose:(BUFullscreenVideoAd *)fullscreenVideoAd; | - (void)adDidDismiss:(id<PAGAdProtocol>)ad; |
- (void)fullscreenVideoAdDidPlayFinish:(BUFullscreenVideoAd *)fullscreenVideoAd didFailWithError:(NSError *_Nullable)error; | N/A |
- (void)fullscreenVideoAdDidClickSkip:(BUFullscreenVideoAd *)fullscreenVideoAd; | N/A |
- (void)fullscreenVideoAdCallback:(BUFullscreenVideoAd *)fullscreenVideoAd withType:(BUFullScreenVideoAdType)fullscreenVideoAdType; | N/A |
4500 | 4600 |
BURewardedVideoAd | PAGRewardedAd |
@property (nonatomic, strong) BURewardedVideoModel *rewardedVideoModel; | N/A |
@property (nonatomic, weak, nullable) id<BURewardedVideoAdDelegate> delegate; | @property (nonatomic, weak, nullable) id<PAGRewardedAdDelegate> delegate; |
@property (nonatomic, weak, nullable) id<BURewardedVideoAdDelegate> rewardPlayAgainInteractionDelegate; | N/A |
@property (nonatomic, getter=isAdValid, readonly) BOOL adValid __attribute__((deprecated("Use rewardedVideoAdDidLoad: instead."))); | N/A |
@property (nonatomic, copy, readonly) NSDictionary *mediaExt; | N/A |
@property (nonatomic, assign, readonly) BOOL materialMetaIsFromPreload; | N/A |
@property (nonatomic, assign,readonly) NSTimeInterval expireTimestamp; | N/A |
- initWithSlotID: rewardedVideoModel: | N/A |
- initWithSlot: rewardedVideoModel: | N/A |
- loadAdData | + (void)loadAdWithSlotID:(NSString *)slotIDrequest:(PAGRewardedRequest *)requestcompletionHandler:(PAGRewardedAdLoadCompletionHandler)completionHandler; |
- getAdCreativeToken | N/A |
- showAdFromRootViewController: | - (void)presentFromRootViewController:(UIViewController *)rootViewController; |
- showAdFromRootViewController: ritScene: ritSceneDescribe: | N/A |
- getExpireTimestamp | N/A |
4500 | 4600 |
BURewardedVideoAdDelegate | PAGRewardedAdDelegate |
- rewardedVideoAdDidLoad: | N/A |
- rewardedVideoAd: didFailWithError: | N/A |
- rewardedVideoAdVideoDidLoad: | N/A |
- rewardedVideoAdWillVisible: | N/A |
- rewardedVideoAdDidVisible: | - (void)adDidShow:(id<PAGAdProtocol>)ad; |
- rewardedVideoAdWillClose: | N/A |
- rewardedVideoAdDidClose: | - (void)adDidDismiss:(id<PAGAdProtocol>)ad; |
- rewardedVideoAdDidClick: | - (void)adDidClick:(id<PAGAdProtocol>)ad; |
- rewardedVideoAdDidPlayFinish: didFailWithError: | N/A |
- rewardedVideoAdServerRewardDidSucceed: verify: | - (void)rewardedAd:(PAGRewardedAd *)rewardedAd userDidEarnReward:(PAGRewardModel *)rewardModel; |
- rewardedVideoAdServerRewardDidFail: | N/A |
- rewardedVideoAdServerRewardDidFail: error: | - (void)rewardedAd:(PAGRewardedAd *)rewardedAd userEarnRewardFailWithError:(NSError *)error; |
- rewardedVideoAdDidClickSkip: | N/A |
- rewardedVideoAdCallback: withType: | N/A |
4500 | 4600 |
BUAppOpenAd | PAGLAppOpenAd |
@property (nonatomic, weak, nullable) id<BUAppOpenAdDelegate> delegate; | @property (nonatomic, weak, nullable) id<PAGLAppOpenAdDelegate> delegate; |
- initWithSlot: | N/A |
- loadOpenAdWithTimeout:completionHandler: | + (void)loadAdWithSlotID:(NSString *)slotIDrequest:(PAGOpenRequest *)requestcompletionHandler:(PAGAppOpenADLoadCompletionHandler)completionHandler; |
- presentFromRootViewController: | - (void)presentFromRootViewController:(UIViewController *)rootViewController; |
4500 | 4600 |
BUAppOpenAdDelegate | PAGLAppOpenAdDelegate |
- didPresentForAppOpenAd: | - (void)adDidShow:(id<PAGAdProtocol>)ad; |
- didClickForAppOpenAd: | - (void)adDidClick:(id<PAGAdProtocol>)ad; |
- didClickSkipForAppOpenAd: | - (void)adDidDismiss:(id<PAGAdProtocol>)ad; |
- countdownToZeroForAppOpenAd: |