react-native-applovin-max 8.2.0 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/android/build.gradle +13 -2
  2. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdView.java +33 -26
  3. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdViewManagerImpl.java +110 -0
  4. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdViewUiComponent.java +15 -13
  5. package/android/src/main/java/com/applovin/reactnative/{AppLovinMAXModule.java → AppLovinMAXModuleImpl.java} +107 -168
  6. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXNativeAdView.java +84 -56
  7. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXNativeAdViewManagerImpl.java +101 -0
  8. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXPackage.java +44 -11
  9. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXUtils.java +56 -0
  10. package/android/src/newarch/com/applovin/reactnative/AppLovinMAXAdViewManager.java +151 -0
  11. package/android/src/newarch/com/applovin/reactnative/AppLovinMAXModule.java +453 -0
  12. package/android/src/newarch/com/applovin/reactnative/AppLovinMAXNativeAdViewManager.java +130 -0
  13. package/android/src/oldarch/com/applovin/reactnative/AppLovinMAXAdViewManager.java +128 -0
  14. package/android/src/oldarch/com/applovin/reactnative/AppLovinMAXModule.java +453 -0
  15. package/android/src/oldarch/com/applovin/reactnative/AppLovinMAXNativeAdViewManager.java +93 -0
  16. package/ios/AppLovinMAX.h +8 -3
  17. package/ios/{AppLovinMAX.m → AppLovinMAX.mm} +66 -53
  18. package/ios/AppLovinMAXAdView.h +7 -2
  19. package/ios/AppLovinMAXAdView.mm +747 -0
  20. package/ios/{AppLovinMAXAdViewManager.m → AppLovinMAXAdViewManager.mm} +3 -2
  21. package/ios/{AppLovinMAXAdViewUIComponent.m → AppLovinMAXAdViewUIComponent.mm} +2 -1
  22. package/ios/AppLovinMAXNativeAdView.h +15 -4
  23. package/ios/AppLovinMAXNativeAdView.mm +745 -0
  24. package/ios/AppLovinMAXNativeAdViewManager.mm +116 -0
  25. package/lib/commonjs/AdView.js +61 -85
  26. package/lib/commonjs/AdView.js.map +1 -1
  27. package/lib/commonjs/AppLovinMAX.js +11 -10
  28. package/lib/commonjs/AppLovinMAX.js.map +1 -1
  29. package/lib/commonjs/AppOpenAd.js +8 -10
  30. package/lib/commonjs/AppOpenAd.js.map +1 -1
  31. package/lib/commonjs/BannerAd.js +19 -21
  32. package/lib/commonjs/BannerAd.js.map +1 -1
  33. package/lib/commonjs/ErrorCode.js +3 -5
  34. package/lib/commonjs/ErrorCode.js.map +1 -1
  35. package/lib/commonjs/EventEmitter.js +3 -5
  36. package/lib/commonjs/EventEmitter.js.map +1 -1
  37. package/lib/commonjs/InterstitialAd.js +8 -10
  38. package/lib/commonjs/InterstitialAd.js.map +1 -1
  39. package/lib/commonjs/MRecAd.js +14 -16
  40. package/lib/commonjs/MRecAd.js.map +1 -1
  41. package/lib/commonjs/Privacy.js +3 -5
  42. package/lib/commonjs/Privacy.js.map +1 -1
  43. package/lib/commonjs/RewardedAd.js +8 -10
  44. package/lib/commonjs/RewardedAd.js.map +1 -1
  45. package/lib/commonjs/Utils.js +25 -0
  46. package/lib/commonjs/Utils.js.map +1 -0
  47. package/lib/commonjs/nativeAd/NativeAdView.js +65 -42
  48. package/lib/commonjs/nativeAd/NativeAdView.js.map +1 -1
  49. package/lib/commonjs/nativeAd/NativeAdViewComponents.js +51 -47
  50. package/lib/commonjs/nativeAd/NativeAdViewComponents.js.map +1 -1
  51. package/lib/commonjs/nativeAd/NativeAdViewProvider.js +38 -8
  52. package/lib/commonjs/nativeAd/NativeAdViewProvider.js.map +1 -1
  53. package/lib/commonjs/nativeAd/img/blank_icon.png +0 -0
  54. package/lib/commonjs/specs/AppLovinMAXAdViewNativeComponent.js +14 -0
  55. package/lib/commonjs/specs/AppLovinMAXAdViewNativeComponent.js.map +1 -0
  56. package/lib/commonjs/specs/AppLovinMAXNativeAdViewNativeComponent.js +14 -0
  57. package/lib/commonjs/specs/AppLovinMAXNativeAdViewNativeComponent.js.map +1 -0
  58. package/lib/commonjs/specs/NativeAppLovinMAXModule.js +9 -0
  59. package/lib/commonjs/specs/NativeAppLovinMAXModule.js.map +1 -0
  60. package/lib/module/AdView.js +56 -81
  61. package/lib/module/AdView.js.map +1 -1
  62. package/lib/module/AppLovinMAX.js +7 -7
  63. package/lib/module/AppLovinMAX.js.map +1 -1
  64. package/lib/module/AppOpenAd.js +1 -4
  65. package/lib/module/AppOpenAd.js.map +1 -1
  66. package/lib/module/BannerAd.js +1 -4
  67. package/lib/module/BannerAd.js.map +1 -1
  68. package/lib/module/ErrorCode.js +1 -4
  69. package/lib/module/ErrorCode.js.map +1 -1
  70. package/lib/module/EventEmitter.js +2 -4
  71. package/lib/module/EventEmitter.js.map +1 -1
  72. package/lib/module/InterstitialAd.js +2 -5
  73. package/lib/module/InterstitialAd.js.map +1 -1
  74. package/lib/module/MRecAd.js +1 -4
  75. package/lib/module/MRecAd.js.map +1 -1
  76. package/lib/module/Privacy.js +1 -4
  77. package/lib/module/Privacy.js.map +1 -1
  78. package/lib/module/RewardedAd.js +2 -5
  79. package/lib/module/RewardedAd.js.map +1 -1
  80. package/lib/module/Utils.js +17 -0
  81. package/lib/module/Utils.js.map +1 -0
  82. package/lib/module/nativeAd/NativeAdView.js +63 -40
  83. package/lib/module/nativeAd/NativeAdView.js.map +1 -1
  84. package/lib/module/nativeAd/NativeAdViewComponents.js +53 -49
  85. package/lib/module/nativeAd/NativeAdViewComponents.js.map +1 -1
  86. package/lib/module/nativeAd/NativeAdViewProvider.js +39 -9
  87. package/lib/module/nativeAd/NativeAdViewProvider.js.map +1 -1
  88. package/lib/module/nativeAd/img/blank_icon.png +0 -0
  89. package/lib/module/specs/AppLovinMAXAdViewNativeComponent.js +7 -0
  90. package/lib/module/specs/AppLovinMAXAdViewNativeComponent.js.map +1 -0
  91. package/lib/module/specs/AppLovinMAXNativeAdViewNativeComponent.js +7 -0
  92. package/lib/module/specs/AppLovinMAXNativeAdViewNativeComponent.js.map +1 -0
  93. package/lib/module/specs/NativeAppLovinMAXModule.js +3 -0
  94. package/lib/module/specs/NativeAppLovinMAXModule.js.map +1 -0
  95. package/lib/typescript/src/AdView.d.ts +11 -11
  96. package/lib/typescript/src/AdView.d.ts.map +1 -1
  97. package/lib/typescript/src/AppLovinMAX.d.ts.map +1 -1
  98. package/lib/typescript/src/AppOpenAd.d.ts.map +1 -1
  99. package/lib/typescript/src/BannerAd.d.ts.map +1 -1
  100. package/lib/typescript/src/ErrorCode.d.ts.map +1 -1
  101. package/lib/typescript/src/EventEmitter.d.ts.map +1 -1
  102. package/lib/typescript/src/InterstitialAd.d.ts.map +1 -1
  103. package/lib/typescript/src/MRecAd.d.ts.map +1 -1
  104. package/lib/typescript/src/Privacy.d.ts.map +1 -1
  105. package/lib/typescript/src/RewardedAd.d.ts.map +1 -1
  106. package/lib/typescript/src/Utils.d.ts +16 -0
  107. package/lib/typescript/src/Utils.d.ts.map +1 -0
  108. package/lib/typescript/src/nativeAd/NativeAdView.d.ts.map +1 -1
  109. package/lib/typescript/src/nativeAd/NativeAdViewComponents.d.ts.map +1 -1
  110. package/lib/typescript/src/nativeAd/NativeAdViewProvider.d.ts +14 -5
  111. package/lib/typescript/src/nativeAd/NativeAdViewProvider.d.ts.map +1 -1
  112. package/lib/typescript/src/specs/AppLovinMAXAdViewNativeComponent.d.ts +86 -0
  113. package/lib/typescript/src/specs/AppLovinMAXAdViewNativeComponent.d.ts.map +1 -0
  114. package/lib/typescript/src/specs/AppLovinMAXNativeAdViewNativeComponent.d.ts +80 -0
  115. package/lib/typescript/src/specs/AppLovinMAXNativeAdViewNativeComponent.d.ts.map +1 -0
  116. package/lib/typescript/src/specs/NativeAppLovinMAXModule.d.ts +132 -0
  117. package/lib/typescript/src/specs/NativeAppLovinMAXModule.d.ts.map +1 -0
  118. package/lib/typescript/src/types/AdInfo.d.ts +1 -1
  119. package/lib/typescript/src/types/AdInfo.d.ts.map +1 -1
  120. package/lib/typescript/src/types/AdProps.d.ts +2 -2
  121. package/lib/typescript/src/types/AdProps.d.ts.map +1 -1
  122. package/lib/typescript/src/types/NativeAd.d.ts +4 -0
  123. package/lib/typescript/src/types/NativeAd.d.ts.map +1 -1
  124. package/package.json +9 -1
  125. package/react-native-applovin-max.podspec +2 -2
  126. package/src/AdView.tsx +56 -121
  127. package/src/AppLovinMAX.ts +7 -8
  128. package/src/AppOpenAd.ts +1 -3
  129. package/src/BannerAd.ts +1 -3
  130. package/src/ErrorCode.ts +1 -3
  131. package/src/EventEmitter.ts +2 -3
  132. package/src/InterstitialAd.ts +2 -4
  133. package/src/MRecAd.ts +1 -3
  134. package/src/Privacy.ts +1 -3
  135. package/src/RewardedAd.ts +2 -4
  136. package/src/Utils.ts +26 -0
  137. package/src/nativeAd/NativeAdView.tsx +65 -65
  138. package/src/nativeAd/NativeAdViewComponents.tsx +32 -60
  139. package/src/nativeAd/NativeAdViewProvider.tsx +37 -12
  140. package/src/nativeAd/img/blank_icon.png +0 -0
  141. package/src/specs/AppLovinMAXAdViewNativeComponent.ts +96 -0
  142. package/src/specs/AppLovinMAXNativeAdViewNativeComponent.ts +89 -0
  143. package/src/specs/NativeAppLovinMAXModule.ts +208 -0
  144. package/src/types/AdInfo.ts +1 -1
  145. package/src/types/AdProps.ts +2 -2
  146. package/src/types/NativeAd.ts +5 -0
  147. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXAdViewManager.java +0 -149
  148. package/android/src/main/java/com/applovin/reactnative/AppLovinMAXNativeAdViewManager.java +0 -163
  149. package/ios/AppLovinMAXAdView.m +0 -325
  150. package/ios/AppLovinMAXNativeAdView.m +0 -432
  151. package/ios/AppLovinMAXNativeAdViewManager.m +0 -64
@@ -0,0 +1,80 @@
1
+ import type { HostComponent, ViewProps } from 'react-native';
2
+ import type { Double, DirectEventHandler } from 'react-native/Libraries/Types/CodegenTypes';
3
+ export type AdInfoEvent = Readonly<{
4
+ adUnitId: string;
5
+ adFormat: string;
6
+ networkName: string;
7
+ networkPlacement: string;
8
+ creativeId?: string | null;
9
+ placement?: string | null;
10
+ revenue: Double;
11
+ revenuePrecision: string;
12
+ latencyMillis: Double;
13
+ dspName?: string | null;
14
+ size: Readonly<{
15
+ width: Double;
16
+ height: Double;
17
+ }>;
18
+ nativeAd?: Readonly<{
19
+ title?: string;
20
+ advertiser?: string;
21
+ body?: string;
22
+ callToAction?: string;
23
+ starRating?: Double;
24
+ mediaContentAspectRatio?: Double;
25
+ isIconImageAvailable: boolean;
26
+ isOptionsViewAvailable: boolean;
27
+ isMediaViewAvailable: boolean;
28
+ }>;
29
+ nativeAdImpl: Readonly<{
30
+ title?: string | null;
31
+ advertiser?: string | null;
32
+ body?: string | null;
33
+ callToAction?: string | null;
34
+ image?: boolean;
35
+ imageSource?: string | null;
36
+ url?: string;
37
+ starRating?: Double;
38
+ isOptionsViewAvailable: boolean;
39
+ isMediaViewAvailable: boolean;
40
+ }>;
41
+ }>;
42
+ export type AdLoadFailedEvent = Readonly<{
43
+ adUnitId: string;
44
+ code: Double;
45
+ message?: string | null;
46
+ mediatedNetworkErrorCode: Double;
47
+ mediatedNetworkErrorMessage: string;
48
+ adLoadFailureInfo?: string | null;
49
+ }>;
50
+ export interface NativeProps extends ViewProps {
51
+ adUnitId: string;
52
+ placement?: string | null;
53
+ customData?: string | null;
54
+ extraParameters?: ReadonlyArray<{
55
+ key: string;
56
+ value: string | null;
57
+ }> | null;
58
+ strLocalExtraParameters?: ReadonlyArray<{
59
+ key: string;
60
+ value: string | null;
61
+ }> | null;
62
+ boolLocalExtraParameters?: ReadonlyArray<{
63
+ key: string;
64
+ value: boolean | null;
65
+ }> | null;
66
+ onAdLoadedEvent: DirectEventHandler<AdInfoEvent>;
67
+ onAdLoadFailedEvent: DirectEventHandler<AdLoadFailedEvent>;
68
+ onAdClickedEvent: DirectEventHandler<AdInfoEvent>;
69
+ onAdRevenuePaidEvent: DirectEventHandler<AdInfoEvent>;
70
+ }
71
+ type AppLovinMAXNativeAdViewNativeComponentType = HostComponent<NativeProps>;
72
+ interface NativeCommands {
73
+ loadAd: (viewRef: React.ElementRef<AppLovinMAXNativeAdViewNativeComponentType>) => void;
74
+ updateAssetView: (viewRef: React.ElementRef<AppLovinMAXNativeAdViewNativeComponentType>, assetViewTag: Double, assetViewName: string) => void;
75
+ renderNativeAd: (viewRef: React.ElementRef<AppLovinMAXNativeAdViewNativeComponentType>) => void;
76
+ }
77
+ export declare const Commands: NativeCommands;
78
+ declare const _default: HostComponent<NativeProps>;
79
+ export default _default;
80
+ //# sourceMappingURL=AppLovinMAXNativeAdViewNativeComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppLovinMAXNativeAdViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../../src/specs/AppLovinMAXNativeAdViewNativeComponent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,132 @@
1
+ import type { TurboModule } from 'react-native';
2
+ import type { UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes';
3
+ import type { Configuration } from '../types';
4
+ import type { CMPError } from '../types';
5
+ import type { AdViewId } from '../types';
6
+ export interface Spec extends TurboModule {
7
+ readonly getConstants: () => {
8
+ ON_INTERSTITIAL_LOADED_EVENT: string;
9
+ ON_INTERSTITIAL_LOAD_FAILED_EVENT: string;
10
+ ON_INTERSTITIAL_CLICKED_EVENT: string;
11
+ ON_INTERSTITIAL_DISPLAYED_EVENT: string;
12
+ ON_INTERSTITIAL_AD_FAILED_TO_DISPLAY_EVENT: string;
13
+ ON_INTERSTITIAL_HIDDEN_EVENT: string;
14
+ ON_INTERSTITIAL_AD_REVENUE_PAID: string;
15
+ ON_REWARDED_AD_LOADED_EVENT: string;
16
+ ON_REWARDED_AD_LOAD_FAILED_EVENT: string;
17
+ ON_REWARDED_AD_CLICKED_EVENT: string;
18
+ ON_REWARDED_AD_DISPLAYED_EVENT: string;
19
+ ON_REWARDED_AD_FAILED_TO_DISPLAY_EVENT: string;
20
+ ON_REWARDED_AD_HIDDEN_EVENT: string;
21
+ ON_REWARDED_AD_RECEIVED_REWARD_EVENT: string;
22
+ ON_REWARDED_AD_REVENUE_PAID: string;
23
+ ON_BANNER_AD_LOADED_EVENT: string;
24
+ ON_BANNER_AD_LOAD_FAILED_EVENT: string;
25
+ ON_BANNER_AD_CLICKED_EVENT: string;
26
+ ON_BANNER_AD_COLLAPSED_EVENT: string;
27
+ ON_BANNER_AD_EXPANDED_EVENT: string;
28
+ ON_BANNER_AD_REVENUE_PAID: string;
29
+ ON_MREC_AD_LOADED_EVENT: string;
30
+ ON_MREC_AD_LOAD_FAILED_EVENT: string;
31
+ ON_MREC_AD_CLICKED_EVENT: string;
32
+ ON_MREC_AD_COLLAPSED_EVENT: string;
33
+ ON_MREC_AD_EXPANDED_EVENT: string;
34
+ ON_MREC_AD_REVENUE_PAID: string;
35
+ ON_APPOPEN_AD_LOADED_EVENT: string;
36
+ ON_APPOPEN_AD_LOAD_FAILED_EVENT: string;
37
+ ON_APPOPEN_AD_CLICKED_EVENT: string;
38
+ ON_APPOPEN_AD_DISPLAYED_EVENT: string;
39
+ ON_APPOPEN_AD_FAILED_TO_DISPLAY_EVENT: string;
40
+ ON_APPOPEN_AD_HIDDEN_EVENT: string;
41
+ ON_APPOPEN_AD_REVENUE_PAID: string;
42
+ ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOADED_EVENT: string;
43
+ ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOAD_FAILED_EVENT: string;
44
+ MAX_ERROR_CODE_UNSPECIFIED: number;
45
+ MAX_ERROR_CODE_NO_FILL: number;
46
+ MAX_ERROR_CODE_AD_LOAD_FAILED: number;
47
+ MAX_ERROR_CODE_AD_DISPLAY_FAILED: number;
48
+ MAX_ERROR_CODE_NETWORK_ERROR: number;
49
+ MAX_ERROR_CODE_NETWORK_TIMEOUT: number;
50
+ MAX_ERROR_CODE_NO_NETWORK: number;
51
+ MAX_ERROR_CODE_FULLSCREEN_AD_ALREADY_SHOWING: number;
52
+ MAX_ERROR_CODE_FULLSCREEN_AD_NOT_READY: number;
53
+ MAX_ERROR_CODE_FULLSCREEN_AD_INVALID_VIEW_CONTROLLER: number;
54
+ MAX_ERROR_CODE_DONT_KEEP_ACTIVITIES_ENABLED: number;
55
+ MAX_ERROR_CODE_INVALID_AD_UNIT_ID: number;
56
+ };
57
+ isInitialized(): Promise<boolean>;
58
+ initialize(pluginVersion: string, sdkKey: string): Promise<Configuration>;
59
+ isTablet(): Promise<boolean>;
60
+ showMediationDebugger(): void;
61
+ setHasUserConsent(hasUserConsent: boolean): void;
62
+ hasUserConsent(): Promise<boolean>;
63
+ setDoNotSell(doNotSell: boolean): void;
64
+ isDoNotSell(): Promise<boolean>;
65
+ setUserId(userId: string): void;
66
+ setMuted(muted: boolean): void;
67
+ isMuted(): Promise<boolean>;
68
+ setVerboseLogging(enabled: boolean): void;
69
+ setCreativeDebuggerEnabled(enabled: boolean): void;
70
+ setTestDeviceAdvertisingIds(ids: string[]): void;
71
+ setExtraParameter(key: string, value: string | null): void;
72
+ setInitializationAdUnitIds(adUnitIds: string[]): void;
73
+ setTermsAndPrivacyPolicyFlowEnabled(enabled: boolean): void;
74
+ setPrivacyPolicyUrl(url: string): void;
75
+ setTermsOfServiceUrl(url: string): void;
76
+ setConsentFlowDebugUserGeography(userGeography: string): void;
77
+ showCmpForExistingUser(): Promise<CMPError | null>;
78
+ hasSupportedCmp(): Promise<boolean>;
79
+ addSegment(key: number, values: number[]): Promise<void>;
80
+ getSegments(): Promise<{
81
+ [key: string]: number[];
82
+ } | null>;
83
+ createBanner(adUnitId: string, position: string): void;
84
+ createBannerWithOffsets(adUnitId: string, position: string, xOffset: number, yOffset: number): void;
85
+ setBannerBackgroundColor(adUnitId: string, hexColorCode: string): void;
86
+ setBannerPlacement(adUnitId: string, placement: string | null): void;
87
+ setBannerCustomData(adUnitId: string, customData: string | null): void;
88
+ setBannerWidth(adUnitId: string, width: number): void;
89
+ updateBannerPosition(adUnitId: string, position: string): void;
90
+ updateBannerOffsets(adUnitId: string, xOffset: number, yOffset: number): void;
91
+ setBannerExtraParameter(adUnitId: string, key: string, value: string | null): void;
92
+ setBannerLocalExtraParameter(adUnitId: string, parameters: UnsafeObject): void;
93
+ startBannerAutoRefresh(adUnitId: string): void;
94
+ stopBannerAutoRefresh(adUnitId: string): void;
95
+ showBanner(adUnitId: string): void;
96
+ hideBanner(adUnitId: string): void;
97
+ destroyBanner(adUnitId: string): void;
98
+ getAdaptiveBannerHeightForWidth(width: number): Promise<number>;
99
+ createMRec(adUnitId: string, position: string): void;
100
+ setMRecPlacement(adUnitId: string, placement: string | null): void;
101
+ setMRecCustomData(adUnitId: string, customData: string | null): void;
102
+ updateMRecPosition(adUnitId: string, position: string): void;
103
+ setMRecExtraParameter(adUnitId: string, key: string, value: string | null): void;
104
+ setMRecLocalExtraParameter(adUnitId: string, parameters: UnsafeObject): void;
105
+ startMRecAutoRefresh(adUnitId: string): void;
106
+ stopMRecAutoRefresh(adUnitId: string): void;
107
+ showMRec(adUnitId: string): void;
108
+ hideMRec(adUnitId: string): void;
109
+ destroyMRec(adUnitId: string): void;
110
+ loadInterstitial(adUnitId: string): void;
111
+ isInterstitialReady(adUnitId: string): Promise<boolean>;
112
+ showInterstitial(adUnitId: string, placement?: string | null, customData?: string | null): void;
113
+ setInterstitialExtraParameter(adUnitId: string, key: string, value: string | null): void;
114
+ setInterstitialLocalExtraParameter(adUnitId: string, parameters: UnsafeObject): void;
115
+ loadRewardedAd(adUnitId: string): void;
116
+ isRewardedAdReady(adUnitId: string): Promise<boolean>;
117
+ showRewardedAd(adUnitId: string, placement?: string | null, customData?: string | null): void;
118
+ setRewardedAdExtraParameter(adUnitId: string, key: string, value: string | null): void;
119
+ setRewardedAdLocalExtraParameter(adUnitId: string, parameters: UnsafeObject): void;
120
+ loadAppOpenAd(adUnitId: string): void;
121
+ isAppOpenAdReady(adUnitId: string): Promise<boolean>;
122
+ showAppOpenAd(adUnitId: string, placement?: string | null, customData?: string | null): void;
123
+ setAppOpenAdExtraParameter(adUnitId: string, key: string, value: string | null): void;
124
+ setAppOpenAdLocalExtraParameter(adUnitId: string, parameters: UnsafeObject): void;
125
+ preloadNativeUIComponentAdView(adUnitId: string, adFormat: string, placement?: string | null, customData?: string | null, extraParameters?: UnsafeObject | null, localExtraParameters?: UnsafeObject | null): Promise<AdViewId>;
126
+ destroyNativeUIComponentAdView(adViewId: number): Promise<void>;
127
+ addListener(eventType: string): void;
128
+ removeListeners(count: number): void;
129
+ }
130
+ declare const _default: Spec;
131
+ export default _default;
132
+ //# sourceMappingURL=NativeAppLovinMAXModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeAppLovinMAXModule.d.ts","sourceRoot":"","sources":["../../../../src/specs/NativeAppLovinMAXModule.ts"],"names":[],"mappings":"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"}
@@ -65,7 +65,7 @@ export type AdInfo = {
65
65
  /**
66
66
  * The underlying waterfall of ad responses.
67
67
  */
68
- waterfall: AdWaterfallInfo;
68
+ waterfall?: AdWaterfallInfo;
69
69
  /**
70
70
  * The native ad info.
71
71
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AdInfo.d.ts","sourceRoot":"","sources":["../../../../src/types/AdInfo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdInfo.d.ts","sourceRoot":"","sources":["../../../../src/types/AdInfo.ts"],"names":[],"mappings":"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"}
@@ -25,14 +25,14 @@ export type AdProps = {
25
25
  * for the ad.
26
26
  */
27
27
  extraParameters?: {
28
- [key: string]: string | null;
28
+ [key: string]: string;
29
29
  };
30
30
  /**
31
31
  * A dictionary value representing the local extra parameters to set a list of key-value pairs
32
32
  * to pass to the adapter instances.
33
33
  */
34
34
  localExtraParameters?: {
35
- [key: string]: LocalExtraParameterValue;
35
+ [key: string]: string | boolean;
36
36
  };
37
37
  /**
38
38
  * A callback fuction that {@link AdView} or {@link NativeAdView} fires when it loads a new ad.
@@ -1 +1 @@
1
- {"version":3,"file":"AdProps.d.ts","sourceRoot":"","sources":["../../../../src/types/AdProps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IAClB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAEnD;;;OAGG;IACH,oBAAoB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,wBAAwB,CAAA;KAAE,CAAC;IAEnE;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEtC;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEvC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C,CAAC"}
1
+ {"version":3,"file":"AdProps.d.ts","sourceRoot":"","sources":["../../../../src/types/AdProps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IAClB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,eAAe,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAE5C;;;OAGG;IACH,oBAAoB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAE3D;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEtC;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEnD;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAEvC;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C,CAAC"}
@@ -22,6 +22,10 @@ export type NativeAd = {
22
22
  * Whether or not this has an image icon.
23
23
  */
24
24
  image?: boolean;
25
+ /**
26
+ * The data of the icon.
27
+ */
28
+ imageSource?: string | null;
25
29
  /**
26
30
  * The URL string of the icon.
27
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"NativeAd.d.ts","sourceRoot":"","sources":["../../../../src/types/NativeAd.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,oBAAoB,EAAE,OAAO,CAAC;CACjC,CAAC"}
1
+ {"version":3,"file":"NativeAd.d.ts","sourceRoot":"","sources":["../../../../src/types/NativeAd.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAErB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,oBAAoB,EAAE,OAAO,CAAC;CACjC,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-native-applovin-max",
3
3
  "author": "AppLovin Corporation <support@applovin.com> (https://applovin.com)",
4
- "version": "8.2.0",
4
+ "version": "9.0.0",
5
5
  "description": "AppLovin MAX React Native Plugin for Android and iOS",
6
6
  "main": "lib/commonjs/index",
7
7
  "module": "lib/module/index",
@@ -117,5 +117,13 @@
117
117
  }
118
118
  ]
119
119
  ]
120
+ },
121
+ "codegenConfig": {
122
+ "name": "RNAppLovinMAXSpec",
123
+ "type": "all",
124
+ "jsSrcsDir": "./src/specs",
125
+ "android": {
126
+ "javaPackageName": "com.applovin.reactnative"
127
+ }
120
128
  }
121
129
  }
@@ -11,9 +11,9 @@ Pod::Spec.new do |s|
11
11
  s.authors = package["author"]
12
12
 
13
13
  s.platforms = { :ios => min_ios_version_supported }
14
- s.source = { :git => "https://github.com/AppLovin/AppLovin-MAX-React-Native.git", :tag => "release_8_2_0" }
14
+ s.source = { :git => "https://github.com/AppLovin/AppLovin-MAX-React-Native.git", :tag => "release_9_0_0" }
15
15
 
16
- s.source_files = "ios/AppLovinMAX*.{h,m}"
16
+ s.source_files = "ios/AppLovinMAX*.{h,mm}"
17
17
 
18
18
  s.dependency "AppLovinSDK", "13.1.0"
19
19
 
package/src/AdView.tsx CHANGED
@@ -1,31 +1,16 @@
1
1
  import * as React from 'react';
2
2
  import { useEffect, useState, useRef, useCallback, useImperativeHandle, useReducer, forwardRef } from 'react';
3
- import { NativeModules, requireNativeComponent, StyleSheet, UIManager, findNodeHandle, useWindowDimensions, View } from 'react-native';
4
- import type { ViewProps, ViewStyle, StyleProp, NativeMethods, DimensionValue } from 'react-native';
5
- import type { AdDisplayFailedInfo, AdInfo, AdLoadFailedInfo } from './types/AdInfo';
6
- import type { AdNativeEvent } from './types/AdEvent';
7
- import type { AdViewProps, AdViewHandler, NativeUIComponentAdViewOptions, AdViewId } from './types/AdViewProps';
3
+ import { StyleSheet, useWindowDimensions, View } from 'react-native';
4
+ import type { NativeSyntheticEvent, ViewProps, ViewStyle, StyleProp, DimensionValue } from 'react-native';
5
+ import AppLovinMAX from './specs/NativeAppLovinMAXModule';
6
+ import AdViewComponent, { Commands } from './specs/AppLovinMAXAdViewNativeComponent';
7
+ import type { AdInfoEvent, AdLoadFailedEvent, AdDisplayFailedEvent } from './specs/AppLovinMAXAdViewNativeComponent';
8
8
  import { addEventListener, removeEventListener } from './EventEmitter';
9
+ import type { AdInfo, AdLoadFailedInfo } from './types/AdInfo';
10
+ import type { AdViewProps, AdViewHandler, NativeUIComponentAdViewOptions, AdViewId } from './types/AdViewProps';
11
+ import { makeExtraParametersArray, makeLocalExtraParametersArray } from './Utils';
9
12
 
10
- const { AppLovinMAX } = NativeModules;
11
-
12
- const {
13
- BANNER_AD_FORMAT_LABEL,
14
- MREC_AD_FORMAT_LABEL,
15
-
16
- TOP_CENTER_POSITION,
17
- TOP_LEFT_POSITION,
18
- TOP_RIGHT_POSITION,
19
- CENTERED_POSITION,
20
- CENTER_LEFT_POSITION,
21
- CENTER_RIGHT_POSITION,
22
- BOTTOM_LEFT_POSITION,
23
- BOTTOM_CENTER_POSITION,
24
- BOTTOM_RIGHT_POSITION,
25
-
26
- ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOADED_EVENT,
27
- ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOAD_FAILED_EVENT,
28
- } = AppLovinMAX.getConstants();
13
+ const { ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOADED_EVENT, ON_NATIVE_UI_COMPONENT_ADVIEW_AD_LOAD_FAILED_EVENT } = AppLovinMAX.getConstants();
29
14
 
30
15
  /**
31
16
  * Defines a format of an ad.
@@ -34,43 +19,29 @@ export enum AdFormat {
34
19
  /**
35
20
  * Banner ad.
36
21
  */
37
- BANNER = BANNER_AD_FORMAT_LABEL,
22
+ BANNER = 'BANNER',
38
23
 
39
24
  /**
40
25
  * MREC ad.
41
26
  */
42
- MREC = MREC_AD_FORMAT_LABEL,
27
+ MREC = 'MREC',
43
28
  }
44
29
 
45
30
  /**
46
31
  * Defines a position of a banner or MREC ad.
47
32
  */
48
33
  export enum AdViewPosition {
49
- TOP_CENTER = TOP_CENTER_POSITION,
50
- TOP_LEFT = TOP_LEFT_POSITION,
51
- TOP_RIGHT = TOP_RIGHT_POSITION,
52
- CENTERED = CENTERED_POSITION,
53
- CENTER_LEFT = CENTER_LEFT_POSITION,
54
- CENTER_RIGHT = CENTER_RIGHT_POSITION,
55
- BOTTOM_LEFT = BOTTOM_LEFT_POSITION,
56
- BOTTOM_CENTER = BOTTOM_CENTER_POSITION,
57
- BOTTOM_RIGHT = BOTTOM_RIGHT_POSITION,
34
+ TOP_CENTER = 'top_center',
35
+ TOP_LEFT = 'top_left',
36
+ TOP_RIGHT = 'top_right',
37
+ CENTERED = 'centered',
38
+ CENTER_LEFT = 'center_left',
39
+ CENTER_RIGHT = 'center_right',
40
+ BOTTOM_LEFT = 'bottom_left',
41
+ BOTTOM_CENTER = 'bottom_center',
42
+ BOTTOM_RIGHT = 'bottom_right',
58
43
  }
59
44
 
60
- type AdViewNativeEvents = {
61
- onAdLoadedEvent(event: AdNativeEvent<AdInfo>): void;
62
- onAdLoadFailedEvent(event: AdNativeEvent<AdLoadFailedInfo>): void;
63
- onAdDisplayFailedEvent(event: AdNativeEvent<AdDisplayFailedInfo>): void;
64
- onAdClickedEvent(event: AdNativeEvent<AdInfo>): void;
65
- onAdExpandedEvent(event: AdNativeEvent<AdInfo>): void;
66
- onAdCollapsedEvent(event: AdNativeEvent<AdInfo>): void;
67
- onAdRevenuePaidEvent(event: AdNativeEvent<AdInfo>): void;
68
- };
69
-
70
- const AdViewComponent = requireNativeComponent<AdViewProps & ViewProps & AdViewNativeEvents>('AppLovinMAXAdView');
71
-
72
- type AdViewType = React.Component<AdViewProps> & NativeMethods;
73
-
74
45
  type SizeKey = 'width' | 'height';
75
46
  type SizeRecord = Partial<Record<SizeKey, DimensionValue>>;
76
47
 
@@ -108,6 +79,21 @@ const sizeBannerDimensions = async (sizeProps: SizeRecord, adaptiveBannerEnabled
108
79
  return { width, height };
109
80
  };
110
81
 
82
+ const handleAdViewEvent = <T extends AdInfoEvent | AdLoadFailedEvent | AdDisplayFailedEvent>(event: NativeSyntheticEvent<T>, callback?: (adInfo: T) => void) => {
83
+ if (!callback) return;
84
+
85
+ let adInfo: any = { ...event.nativeEvent };
86
+
87
+ if ('size' in event.nativeEvent) {
88
+ adInfo.size = {
89
+ width: event.nativeEvent.size?.width ?? 0,
90
+ height: event.nativeEvent.size?.height ?? 0,
91
+ };
92
+ }
93
+
94
+ callback(adInfo);
95
+ };
96
+
111
97
  /**
112
98
  * The {@link AdView} component renders banner or MREC ads with responsive sizing.
113
99
  * - **Banners**: 320x50 on phones, 728x90 on tablets.
@@ -163,38 +149,17 @@ export const AdView = forwardRef<AdViewHandler, AdViewProps & ViewProps>(functio
163
149
  const { width: screenWidth } = useWindowDimensions();
164
150
  const adFormatSize = useRef<SizeRecord>({});
165
151
  const [, forceUpdate] = useReducer((x) => x + 1, 0);
166
- const adViewRef = useRef<AdViewType | null>(null);
152
+ const adViewRef = useRef<React.ElementRef<typeof AdViewComponent> | undefined>();
167
153
  const [isInitialized, setIsInitialized] = useState<boolean>(false);
168
154
  const sizeProps = useRef<SizeRecord>({});
169
155
  const dimensions = useRef<SizeRecord>({});
170
156
 
171
- const loadAd = useCallback(() => {
172
- if (adViewRef.current) {
173
- UIManager.dispatchViewManagerCommand(
174
- findNodeHandle(adViewRef.current),
175
- // @ts-ignore: Issue in RN ts defs
176
- UIManager.getViewManagerConfig('AppLovinMAXAdView').Commands.loadAd,
177
- undefined
178
- );
179
- }
180
- }, []);
181
-
182
- useImperativeHandle(ref, () => ({ loadAd }), [loadAd]);
183
-
184
- const saveElement = useCallback((element: AdViewType | null) => {
185
- adViewRef.current = element;
186
- }, []);
157
+ useImperativeHandle(ref, () => ({ loadAd: () => Commands.loadAd(adViewRef.current!) }), []);
187
158
 
188
159
  useEffect(() => {
189
160
  (async () => {
190
- if (adFormat === AdFormat.BANNER) {
191
- const isTablet = await AppLovinMAX.isTablet();
192
- adFormatSize.current = isTablet
193
- ? { width: ADVIEW_SIZE.leader.width, height: ADVIEW_SIZE.leader.height }
194
- : { width: ADVIEW_SIZE.banner.width, height: ADVIEW_SIZE.banner.height };
195
- } else {
196
- adFormatSize.current = { width: ADVIEW_SIZE.mrec.width, height: ADVIEW_SIZE.mrec.height };
197
- }
161
+ const isTablet = adFormat === AdFormat.BANNER ? await AppLovinMAX.isTablet() : false;
162
+ adFormatSize.current = adFormat === AdFormat.BANNER ? (isTablet ? ADVIEW_SIZE.leader : ADVIEW_SIZE.banner) : ADVIEW_SIZE.mrec;
198
163
 
199
164
  const initialized = await AppLovinMAX.isInitialized();
200
165
  setIsInitialized(initialized);
@@ -229,54 +194,19 @@ export const AdView = forwardRef<AdViewHandler, AdViewProps & ViewProps>(functio
229
194
  })();
230
195
  }, [adFormat, adaptiveBannerEnabled, isInitialized, screenWidth, style]);
231
196
 
232
- const onAdLoadedEvent = useCallback(
233
- (event: AdNativeEvent<AdInfo>) => {
234
- onAdLoaded?.(event.nativeEvent);
235
- },
236
- [onAdLoaded]
237
- );
197
+ const onAdLoadedEvent = useCallback((event: NativeSyntheticEvent<AdInfoEvent>) => handleAdViewEvent(event, onAdLoaded), [onAdLoaded]);
238
198
 
239
- const onAdLoadFailedEvent = useCallback(
240
- (event: AdNativeEvent<AdLoadFailedInfo>) => {
241
- onAdLoadFailed?.(event.nativeEvent);
242
- },
243
- [onAdLoadFailed]
244
- );
199
+ const onAdLoadFailedEvent = useCallback((event: NativeSyntheticEvent<AdLoadFailedEvent>) => handleAdViewEvent(event, onAdLoadFailed), [onAdLoadFailed]);
245
200
 
246
- const onAdDisplayFailedEvent = useCallback(
247
- (event: AdNativeEvent<AdDisplayFailedInfo>) => {
248
- onAdDisplayFailed?.(event.nativeEvent);
249
- },
250
- [onAdDisplayFailed]
251
- );
201
+ const onAdDisplayFailedEvent = useCallback((event: NativeSyntheticEvent<AdDisplayFailedEvent>) => handleAdViewEvent(event, onAdDisplayFailed), [onAdDisplayFailed]);
252
202
 
253
- const onAdClickedEvent = useCallback(
254
- (event: AdNativeEvent<AdInfo>) => {
255
- onAdClicked?.(event.nativeEvent);
256
- },
257
- [onAdClicked]
258
- );
203
+ const onAdClickedEvent = useCallback((event: NativeSyntheticEvent<AdInfoEvent>) => handleAdViewEvent(event, onAdClicked), [onAdClicked]);
259
204
 
260
- const onAdExpandedEvent = useCallback(
261
- (event: AdNativeEvent<AdInfo>) => {
262
- onAdExpanded?.(event.nativeEvent);
263
- },
264
- [onAdExpanded]
265
- );
205
+ const onAdExpandedEvent = useCallback((event: NativeSyntheticEvent<AdInfoEvent>) => handleAdViewEvent(event, onAdExpanded), [onAdExpanded]);
266
206
 
267
- const onAdCollapsedEvent = useCallback(
268
- (event: AdNativeEvent<AdInfo>) => {
269
- onAdCollapsed?.(event.nativeEvent);
270
- },
271
- [onAdCollapsed]
272
- );
207
+ const onAdCollapsedEvent = useCallback((event: NativeSyntheticEvent<AdInfoEvent>) => handleAdViewEvent(event, onAdCollapsed), [onAdCollapsed]);
273
208
 
274
- const onAdRevenuePaidEvent = useCallback(
275
- (event: AdNativeEvent<AdInfo>) => {
276
- onAdRevenuePaid?.(event.nativeEvent);
277
- },
278
- [onAdRevenuePaid]
279
- );
209
+ const onAdRevenuePaidEvent = useCallback((event: NativeSyntheticEvent<AdInfoEvent>) => handleAdViewEvent(event, onAdRevenuePaid), [onAdRevenuePaid]);
280
210
 
281
211
  if (!isInitialized || Object.keys(dimensions.current).length === 0) {
282
212
  // Early return if not initialized or dimensions are not set
@@ -285,7 +215,7 @@ export const AdView = forwardRef<AdViewHandler, AdViewProps & ViewProps>(functio
285
215
 
286
216
  return (
287
217
  <AdViewComponent
288
- ref={saveElement}
218
+ ref={(element) => (adViewRef.current = element ?? undefined)}
289
219
  adUnitId={adUnitId}
290
220
  adFormat={adFormat}
291
221
  adViewId={adViewId || 0}
@@ -294,8 +224,9 @@ export const AdView = forwardRef<AdViewHandler, AdViewProps & ViewProps>(functio
294
224
  adaptiveBannerEnabled={adaptiveBannerEnabled}
295
225
  autoRefresh={autoRefresh}
296
226
  loadOnMount={loadOnMount}
297
- extraParameters={extraParameters}
298
- localExtraParameters={localExtraParameters}
227
+ extraParameters={makeExtraParametersArray(extraParameters)}
228
+ strLocalExtraParameters={makeLocalExtraParametersArray(localExtraParameters, 'str')}
229
+ boolLocalExtraParameters={makeLocalExtraParametersArray(localExtraParameters, 'bool')}
299
230
  onAdLoadedEvent={onAdLoadedEvent}
300
231
  onAdLoadFailedEvent={onAdLoadFailedEvent}
301
232
  onAdDisplayFailedEvent={onAdDisplayFailedEvent}
@@ -322,8 +253,9 @@ export const AdView = forwardRef<AdViewHandler, AdViewProps & ViewProps>(functio
322
253
  * @returns A promise resolving to an {@link AdViewId}, which uniquely identifies the preloaded component.
323
254
  * @throws An error if the preload request fails.
324
255
  */
325
- export const preloadNativeUIComponentAdView = async (adUnitId: string, adFormat: AdFormat, options?: NativeUIComponentAdViewOptions): Promise<AdViewId> => {
326
- return AppLovinMAX.preloadNativeUIComponentAdView(adUnitId, adFormat, options?.placement, options?.customData, options?.extraParameters, options?.localExtraParameters);
256
+ export const preloadNativeUIComponentAdView = async (adUnitId: string, adFormat: AdFormat, options: NativeUIComponentAdViewOptions = {}): Promise<AdViewId> => {
257
+ const { placement = null, customData = null, extraParameters = {}, localExtraParameters = {} } = options;
258
+ return AppLovinMAX.preloadNativeUIComponentAdView(adUnitId, adFormat, placement, customData, extraParameters, localExtraParameters);
327
259
  };
328
260
 
329
261
  /**
@@ -336,6 +268,9 @@ export const preloadNativeUIComponentAdView = async (adUnitId: string, adFormat:
336
268
  * @throws An error if the destruction process fails.
337
269
  */
338
270
  export const destroyNativeUIComponentAdView = async (adViewId: AdViewId): Promise<void> => {
271
+ if (adViewId === undefined) {
272
+ return Promise.reject(new Error('adViewId is not provided'));
273
+ }
339
274
  return AppLovinMAX.destroyNativeUIComponentAdView(adViewId);
340
275
  };
341
276
 
@@ -1,10 +1,8 @@
1
- import { NativeModules } from 'react-native';
2
1
  import type { AppLovinMAXType } from './types/AppLovinMAX';
3
2
  import type { Configuration } from './types/Configuration';
3
+ import NativeAppLovinMAX from './specs/NativeAppLovinMAXModule';
4
4
 
5
- const NativeAppLovinMAX = NativeModules.AppLovinMAX;
6
-
7
- const VERSION = '8.2.0';
5
+ const VERSION = '9.0.0';
8
6
 
9
7
  /**
10
8
  * This enum represents the user's geography used to determine the type of consent flow shown to the
@@ -101,10 +99,11 @@ const getSegments = async (): Promise<Map<number, number[]> | null> => {
101
99
  const map = new Map<number, number[]>();
102
100
 
103
101
  for (const key in segments) {
104
- if (segments.hasOwnProperty(key)) {
105
- // Convert the key from a string to a number. In JavaScript, an object cannot have an
106
- // integer as a key, but the Map object can have keys of any data type.
107
- map.set(Number(key), segments[key]);
102
+ // Convert the key from a string to a number. In JavaScript, an object cannot have an
103
+ // integer as a key, but the Map object can have keys of any data type.
104
+ const value = segments[key];
105
+ if (value) {
106
+ map.set(Number(key), value);
108
107
  }
109
108
  }
110
109
 
package/src/AppOpenAd.ts CHANGED
@@ -1,10 +1,8 @@
1
- import { NativeModules } from 'react-native';
2
1
  import { addEventListener, removeEventListener } from './EventEmitter';
3
2
  import type { AdDisplayFailedInfo, AdInfo, AdLoadFailedInfo } from './types/AdInfo';
4
3
  import type { LocalExtraParameterValue } from './types/AdProps';
5
4
  import type { AppOpenAdType } from './types/AppOpenAd';
6
-
7
- const { AppLovinMAX } = NativeModules;
5
+ import AppLovinMAX from './specs/NativeAppLovinMAXModule';
8
6
 
9
7
  const {
10
8
  ON_APPOPEN_AD_LOADED_EVENT,