Skip to content

Commit d43d016

Browse files
Mobile Ads Developer Relationscopybara-github
authored andcommitted
* Pass the callbacks in the constructor when creating iOS plugin classes.
* Fix typos and add null checks. PiperOrigin-RevId: 784651230
1 parent 965760e commit d43d016

File tree

1 file changed

+51
-31
lines changed

1 file changed

+51
-31
lines changed

source/plugin/Assets/Plugins/iOS/GADUInterface.m

Lines changed: 51 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -387,11 +387,21 @@ GADUTypeAppOpenAdPreloaderRef GADUCreateAppOpenAdPreloader(
387387

388388
/// Creates a GADURewardedAdPreloader and returns its reference.
389389
GADUTypeRewardedAdPreloaderRef GADUCreateRewardedAdPreloader(
390-
GADUTypeRewardedAdPreloaderClientRef *rewardedAdPreloaderClient) {
390+
GADUTypeRewardedAdPreloaderClientRef *rewardedAdPreloaderClient,
391+
GADUAdAvailableForPreloadIDCallback adAvailableForPreloadIDCallback,
392+
GADUAdFailedToPreloadForPreloadIDCallback adFailedToPreloadForPreloadIDCallback,
393+
GADUAdsExhaustedForPreloadIDCallback adsExhaustedForPreloadIDCallback) {
391394
GADURewardedAdPreloader *rewardedAdPreloader = [[GADURewardedAdPreloader alloc]
392395
initWithRewardedAdPreloaderClientReference:rewardedAdPreloaderClient];
396+
if (!rewardedAdPreloader) {
397+
return nil;
398+
}
393399
GADUObjectCache *cache = GADUObjectCache.sharedInstance;
394400
cache[rewardedAdPreloader.gadu_referenceKey] = rewardedAdPreloader;
401+
rewardedAdPreloader.adAvailableForPreloadIDCallback = adAvailableForPreloadIDCallback;
402+
rewardedAdPreloader.adFailedToPreloadForPreloadIDCallback =
403+
adFailedToPreloadForPreloadIDCallback;
404+
rewardedAdPreloader.adsExhaustedForPreloadIDCallback = adsExhaustedForPreloadIDCallback;
395405
return (__bridge GADUTypeRewardedAdPreloaderRef)rewardedAdPreloader;
396406
}
397407

@@ -650,20 +660,6 @@ GADUTypeNativeTemplateAdRef GADUCreateNativeTemplateAd(
650660
return (__bridge GADUTypeNativeTemplateAdRef)nativeAd;
651661
}
652662

653-
/// Sets the rewarded ad preloader callback methods to be invoked during preload events.
654-
void GADUSetRewardedAdPreloaderCallbacks(
655-
GADUTypeRewardedAdPreloaderRef rewardedAdPreloader,
656-
GADUAdAvailableForPreloadIDCallback adAvailableForPreloadIDCallback,
657-
GADUAdFailedToPreloadForPreloadIDCallback adFailedToPreloadForPreloadIDCallback,
658-
GADUAdsExhaustedForPreloadIDCallback adsExhaustedForPreloadIDCallback) {
659-
GADURewardedAdPreloader *internalRewardedAdPreloader =
660-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
661-
internalRewardedAdPreloader.adAvailableForPreloadIDCallback = adAvailableForPreloadIDCallback;
662-
internalRewardedAdPreloader.adFailedToPreloadForPreloadIDCallback =
663-
adFailedToPreloadForPreloadIDCallback;
664-
internalRewardedAdPreloader.adsExhaustedForPreloadIDCallback = adsExhaustedForPreloadIDCallback;
665-
}
666-
667663
/// Sets the app open ad callback methods to be invoked during app open ad events.
668664
void GADUSetAppOpenAdCallbacks(
669665
GADUTypeAppOpenAdRef appOpenAd, GADUAppOpenAdLoadedCallback adLoadedCallback,
@@ -944,11 +940,14 @@ void GADUAppOpenAdPreloaderDestroyAll(
944940
[internalAppOpenAdPreloader stopPreloadingAndRemoveAllAds];
945941
}
946942

947-
BOOL GADURewardedAdPreloaderPreload(GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient,
943+
BOOL GADURewardedAdPreloaderPreload(GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader,
948944
const char *preloadId,
949945
GADUTypePreloadConfigurationV2Ref preloadConfiguration) {
950946
GADURewardedAdPreloader *internalRewardedAdPreloader =
951-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
947+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
948+
if (!internalRewardedAdPreloader) {
949+
return NO;
950+
}
952951
GADUPreloadConfigurationV2 *internalPreloadConfiguration =
953952
(__bridge GADUPreloadConfigurationV2 *_Nonnull)(preloadConfiguration);
954953
return [internalRewardedAdPreloader
@@ -957,18 +956,24 @@ BOOL GADURewardedAdPreloaderPreload(GADUTypeRewardedAdPreloaderClientRef rewarde
957956
}
958957

959958
BOOL GADURewardedAdPreloaderIsAdAvailable(
960-
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient, const char *preloadId) {
959+
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader, const char *preloadId) {
961960
GADURewardedAdPreloader *internalRewardedAdPreloader =
962-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
961+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
962+
if (!internalRewardedAdPreloader) {
963+
return NO;
964+
}
963965
return
964966
[internalRewardedAdPreloader isAdAvailableWithPreloadID:GADUStringFromUTF8String(preloadId)];
965967
}
966968

967969
GADUTypeRewardedAdRef GADURewardedAdPreloaderGetPreloadedAd(
968-
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient, const char *preloadId,
970+
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader, const char *preloadId,
969971
GADUTypeRewardedAdClientRef *rewardedAdClient) {
970972
GADURewardedAdPreloader *internalRewardedAdPreloader =
971-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
973+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
974+
if (!internalRewardedAdPreloader) {
975+
return nil;
976+
}
972977
GADRewardedAd *rewardedAd =
973978
[internalRewardedAdPreloader adWithPreloadID:GADUStringFromUTF8String(preloadId)
974979
rewardedAdClient:rewardedAdClient];
@@ -981,40 +986,55 @@ GADUTypeRewardedAdRef GADURewardedAdPreloaderGetPreloadedAd(
981986
}
982987

983988
unsigned long GADURewardedAdPreloaderGetNumAdsAvailable(
984-
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient, const char *preloadId) {
989+
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader, const char *preloadId) {
985990
GADURewardedAdPreloader *internalRewardedAdPreloader =
986-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
991+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
992+
if (!internalRewardedAdPreloader) {
993+
return 0;
994+
}
987995
return [internalRewardedAdPreloader
988996
numberOfAdsAvailableWithPreloadID:GADUStringFromUTF8String(preloadId)];
989997
}
990998

991999
GADUTypePreloadConfigurationV2Ref GADURewardedAdPreloaderGetConfiguration(
992-
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient, const char *preloadId) {
1000+
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader, const char *preloadId) {
9931001
GADURewardedAdPreloader *internalRewardedAdPreloader =
994-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
1002+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
1003+
if (!internalRewardedAdPreloader) {
1004+
return nil;
1005+
}
9951006
return (__bridge GADUTypePreloadConfigurationV2Ref)(
9961007
[internalRewardedAdPreloader configurationWithPreloadID:GADUStringFromUTF8String(preloadId)]);
9971008
}
9981009

9991010
GADUTypeRef GADURewardedAdPreloaderGetConfigurations(
1000-
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient) {
1011+
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader) {
10011012
GADURewardedAdPreloader *internalRewardedAdPreloader =
1002-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
1013+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
1014+
if (!internalRewardedAdPreloader) {
1015+
return nil;
1016+
}
10031017
return (__bridge GADUTypeRef)([internalRewardedAdPreloader configurations]);
10041018
}
10051019

1006-
void GADURewardedAdPreloaderDestroy(GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient,
1020+
void GADURewardedAdPreloaderDestroy(GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader,
10071021
const char *preloadId) {
10081022
GADURewardedAdPreloader *internalRewardedAdPreloader =
1009-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
1023+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
1024+
if (!internalRewardedAdPreloader) {
1025+
return;
1026+
}
10101027
[internalRewardedAdPreloader
10111028
stopPreloadingAndRemoveAdsForPreloadID:GADUStringFromUTF8String(preloadId)];
10121029
}
10131030

10141031
void GADURewardedAdPreloaderDestroyAll(
1015-
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloaderClient) {
1032+
GADUTypeRewardedAdPreloaderClientRef rewardedAdPreloader) {
10161033
GADURewardedAdPreloader *internalRewardedAdPreloader =
1017-
(__bridge GADURewardedAdPreloader *)rewardedAdPreloaderClient;
1034+
(__bridge GADURewardedAdPreloader *)rewardedAdPreloader;
1035+
if (!internalRewardedAdPreloader) {
1036+
return;
1037+
}
10181038
[internalRewardedAdPreloader stopPreloadingAndRemoveAllAds];
10191039
}
10201040

0 commit comments

Comments
 (0)