react-native-google-mobile-ads 13.4.0 → 13.6.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.
- package/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsBannerAdViewManager.java +8 -1
- package/docs/displaying-ads.mdx +12 -20
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerComponent.h +1 -0
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerComponent.m +9 -5
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerView.mm +15 -9
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsBannerViewManager.mm +14 -0
- package/lib/commonjs/ads/BannerAd.js +19 -11
- package/lib/commonjs/ads/BannerAd.js.map +1 -1
- package/lib/commonjs/ads/GAMBannerAd.js +5 -0
- package/lib/commonjs/ads/GAMBannerAd.js.map +1 -1
- package/lib/commonjs/ads/GoogleMobileAdsBannerViewNativeComponent.js +1 -1
- package/lib/commonjs/ads/GoogleMobileAdsBannerViewNativeComponent.js.map +1 -1
- package/lib/commonjs/hooks/useForeground.js +45 -0
- package/lib/commonjs/hooks/useForeground.js.map +1 -0
- package/lib/commonjs/index.js +8 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/ads/BannerAd.js +15 -9
- package/lib/module/ads/BannerAd.js.map +1 -1
- package/lib/module/ads/GAMBannerAd.js +5 -0
- package/lib/module/ads/GAMBannerAd.js.map +1 -1
- package/lib/module/ads/GoogleMobileAdsBannerViewNativeComponent.js +1 -1
- package/lib/module/ads/GoogleMobileAdsBannerViewNativeComponent.js.map +1 -1
- package/lib/module/hooks/useForeground.js +40 -0
- package/lib/module/hooks/useForeground.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/ads/BannerAd.d.ts +6 -2
- package/lib/typescript/ads/BannerAd.d.ts.map +1 -1
- package/lib/typescript/ads/GAMBannerAd.d.ts +1 -0
- package/lib/typescript/ads/GAMBannerAd.d.ts.map +1 -1
- package/lib/typescript/ads/GoogleMobileAdsBannerViewNativeComponent.d.ts +1 -0
- package/lib/typescript/ads/GoogleMobileAdsBannerViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/hooks/useForeground.d.ts +7 -0
- package/lib/typescript/hooks/useForeground.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +2 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/ads/BannerAd.tsx +14 -3
- package/src/ads/GAMBannerAd.tsx +6 -0
- package/src/ads/GoogleMobileAdsBannerViewNativeComponent.ts +2 -1
- package/src/hooks/useForeground.ts +41 -0
- package/src/index.ts +1 -0
- package/src/version.ts +1 -1
|
@@ -62,6 +62,7 @@ public class ReactNativeGoogleMobileAdsBannerAdViewManager
|
|
|
62
62
|
private final String EVENT_SIZE_CHANGE = "onSizeChange";
|
|
63
63
|
private final String EVENT_APP_EVENT = "onAppEvent";
|
|
64
64
|
private final int COMMAND_ID_RECORD_MANUAL_IMPRESSION = 1;
|
|
65
|
+
private final int COMMAND_ID_LOAD = 2;
|
|
65
66
|
|
|
66
67
|
@Nonnull
|
|
67
68
|
@Override
|
|
@@ -85,7 +86,9 @@ public class ReactNativeGoogleMobileAdsBannerAdViewManager
|
|
|
85
86
|
@Nullable
|
|
86
87
|
@Override
|
|
87
88
|
public Map<String, Integer> getCommandsMap() {
|
|
88
|
-
return MapBuilder.of(
|
|
89
|
+
return MapBuilder.of(
|
|
90
|
+
"recordManualImpression", COMMAND_ID_RECORD_MANUAL_IMPRESSION,
|
|
91
|
+
"load", COMMAND_ID_LOAD);
|
|
89
92
|
}
|
|
90
93
|
|
|
91
94
|
@Override
|
|
@@ -99,6 +102,10 @@ public class ReactNativeGoogleMobileAdsBannerAdViewManager
|
|
|
99
102
|
if (adView instanceof AdManagerAdView) {
|
|
100
103
|
((AdManagerAdView) adView).recordManualImpression();
|
|
101
104
|
}
|
|
105
|
+
} else if (commandIdInt == COMMAND_ID_LOAD) {
|
|
106
|
+
BaseAdView adView = getAdView(reactViewGroup);
|
|
107
|
+
AdRequest request = reactViewGroup.getRequest();
|
|
108
|
+
adView.loadAd(request);
|
|
102
109
|
}
|
|
103
110
|
}
|
|
104
111
|
|
package/docs/displaying-ads.mdx
CHANGED
|
@@ -399,33 +399,25 @@ The module exposes a [`BannerAd`](/reference/admob/bannerad) component. The `uni
|
|
|
399
399
|
a banner:
|
|
400
400
|
|
|
401
401
|
```js
|
|
402
|
-
import React, { useState,
|
|
403
|
-
import { AppState } from 'react-native';
|
|
404
|
-
import { BannerAd, BannerAdSize, TestIds } from 'react-native-google-mobile-ads';
|
|
402
|
+
import React, { useState, useRef } from 'react';
|
|
403
|
+
import { AppState, Platform } from 'react-native';
|
|
404
|
+
import { BannerAd, BannerAdSize, TestIds, useForeground } from 'react-native-google-mobile-ads';
|
|
405
405
|
|
|
406
406
|
const adUnitId = __DEV__ ? TestIds.ADAPTIVE_BANNER : 'ca-app-pub-xxxxxxxxxxxxx/yyyyyyyyyyyyyy';
|
|
407
407
|
|
|
408
408
|
function App() {
|
|
409
|
+
const bannerRef = useRef<BannerAd>(null);
|
|
409
410
|
const appState = useRef(AppState.currentState);
|
|
410
|
-
const [key, setKey] = useState(`banner-${Date.now()}`);
|
|
411
411
|
|
|
412
|
-
// WKWebView can terminate if app is in a "suspended state", resulting in an empty banner when app returns to foreground.
|
|
413
|
-
//
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
if (appState.current.match(/background/) && nextAppState === 'active') {
|
|
418
|
-
setKey(`banner-${Date.now()}`);
|
|
419
|
-
}
|
|
420
|
-
appState.current = nextAppState;
|
|
421
|
-
});
|
|
412
|
+
// (iOS) WKWebView can terminate if app is in a "suspended state", resulting in an empty banner when app returns to foreground.
|
|
413
|
+
// Therefore it's advised to "manually" request a new ad when the app is foregrounded (https://groups.google.com/g/google-admob-ads-sdk/c/rwBpqOUr8m8).
|
|
414
|
+
useForeground(() => {
|
|
415
|
+
Platform.OS === 'ios' && bannerRef.current?.load();
|
|
416
|
+
})
|
|
422
417
|
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
}, []);
|
|
427
|
-
|
|
428
|
-
return <BannerAd key={key} unitId={adUnitId} size={BannerAdSize.ANCHORED_ADAPTIVE_BANNER} />;
|
|
418
|
+
return (
|
|
419
|
+
<BannerAd ref={bannerRef} unitId={adUnitId} size={BannerAdSize.ANCHORED_ADAPTIVE_BANNER} />
|
|
420
|
+
);
|
|
429
421
|
}
|
|
430
422
|
```
|
|
431
423
|
|
|
@@ -122,13 +122,17 @@
|
|
|
122
122
|
typeof(self) strongSelf = weakSelf;
|
|
123
123
|
if (strongSelf) {
|
|
124
124
|
[strongSelf sendEvent:@"onPaid"
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
125
|
+
payload:@{
|
|
126
|
+
@"value" : value.value,
|
|
127
|
+
@"precision" : @(value.precision),
|
|
128
|
+
@"currency" : value.currencyCode,
|
|
129
|
+
}];
|
|
130
130
|
}
|
|
131
131
|
};
|
|
132
|
+
[self load];
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
- (void)load {
|
|
132
136
|
[_banner loadRequest:[RNGoogleMobileAdsCommon buildAdRequest:_request]];
|
|
133
137
|
[self sendEvent:@"onSizeChange"
|
|
134
138
|
payload:@{
|
|
@@ -146,21 +146,27 @@ using namespace facebook::react;
|
|
|
146
146
|
[self addSubview:_banner];
|
|
147
147
|
_banner.adUnitID = _unitId;
|
|
148
148
|
[self setRequested:YES];
|
|
149
|
-
[
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
149
|
+
[self load];
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
- (void)load {
|
|
154
|
+
[_banner loadRequest:[RNGoogleMobileAdsCommon buildAdRequest:_request]];
|
|
155
|
+
if (_eventEmitter != nullptr) {
|
|
156
|
+
std::dynamic_pointer_cast<const facebook::react::RNGoogleMobileAdsBannerViewEventEmitter>(
|
|
157
|
+
_eventEmitter)
|
|
158
|
+
->onNativeEvent(facebook::react::RNGoogleMobileAdsBannerViewEventEmitter::OnNativeEvent{
|
|
159
|
+
.type = "onSizeChange",
|
|
160
|
+
.width = _banner.bounds.size.width,
|
|
161
|
+
.height = _banner.bounds.size.height});
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
164
|
|
|
161
165
|
- (void)handleCommand:(const NSString *)commandName args:(const NSArray *)args {
|
|
162
166
|
if ([commandName isEqual:@"recordManualImpression"]) {
|
|
163
167
|
[self recordManualImpression];
|
|
168
|
+
} else if ([commandName isEqual:@"load"]) {
|
|
169
|
+
[self load];
|
|
164
170
|
}
|
|
165
171
|
}
|
|
166
172
|
|
|
@@ -55,6 +55,20 @@ RCT_EXPORT_METHOD(recordManualImpression : (nonnull NSNumber *)reactTag) {
|
|
|
55
55
|
#endif
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
+
RCT_EXPORT_METHOD(load : (nonnull NSNumber *)reactTag) {
|
|
59
|
+
#if !TARGET_OS_MACCATALYST
|
|
60
|
+
[self.bridge.uiManager
|
|
61
|
+
addUIBlock:^(RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
62
|
+
RNGoogleMobileAdsBannerComponent *banner = viewRegistry[reactTag];
|
|
63
|
+
if (!banner || ![banner isKindOfClass:[RNGoogleMobileAdsBannerComponent class]]) {
|
|
64
|
+
RCTLogError(@"Cannot find NativeView with tag #%@", reactTag);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
[banner load];
|
|
68
|
+
}];
|
|
69
|
+
#endif
|
|
70
|
+
}
|
|
71
|
+
|
|
58
72
|
#ifdef RCT_NEW_ARCH_ENABLE
|
|
59
73
|
|
|
60
74
|
#else
|
|
@@ -3,10 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.BannerAd =
|
|
7
|
-
var _react =
|
|
6
|
+
exports.BannerAd = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _BaseAd = require("./BaseAd");
|
|
9
|
-
|
|
9
|
+
var _GoogleMobileAdsBannerViewNativeComponent = require("./GoogleMobileAdsBannerViewNativeComponent");
|
|
10
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
10
12
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /*
|
|
11
13
|
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
12
14
|
*
|
|
@@ -23,13 +25,19 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
23
25
|
* limitations under the License.
|
|
24
26
|
*
|
|
25
27
|
*/
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
class BannerAd extends _react.default.Component {
|
|
29
|
+
ref = /*#__PURE__*/(0, _react.createRef)();
|
|
30
|
+
load() {
|
|
31
|
+
if (this.ref.current) {
|
|
32
|
+
_GoogleMobileAdsBannerViewNativeComponent.Commands.load(this.ref.current);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
render() {
|
|
36
|
+
return /*#__PURE__*/_react.default.createElement(_BaseAd.BaseAd, _extends({
|
|
37
|
+
ref: this.ref,
|
|
38
|
+
sizes: [this.props.size]
|
|
39
|
+
}, this.props));
|
|
40
|
+
}
|
|
34
41
|
}
|
|
42
|
+
exports.BannerAd = BannerAd;
|
|
35
43
|
//# sourceMappingURL=BannerAd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_BaseAd","_GoogleMobileAdsBannerViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","BannerAd","React","Component","ref","createRef","load","current","Commands","render","createElement","BaseAd","sizes","props","size","exports"],"sourceRoot":"../../../src","sources":["ads/BannerAd.tsx"],"mappings":";;;;;;AAiBA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,yCAAA,GAAAF,OAAA;AAAiG,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAL,wBAAAS,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA,KApBjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,MAAMI,QAAQ,SAASC,cAAK,CAACC,SAAS,CAAgB;EACnDC,GAAG,gBAAG,IAAAC,gBAAS,EAAqD,CAAC;EAE7EC,IAAIA,CAAA,EAAG;IACL,IAAI,IAAI,CAACF,GAAG,CAACG,OAAO,EAAE;MACpBC,kDAAQ,CAACF,IAAI,CAAC,IAAI,CAACF,GAAG,CAACG,OAAO,CAAC;IACjC;EACF;EAEAE,MAAMA,CAAA,EAAG;IACP,oBAAO5C,MAAA,CAAAY,OAAA,CAAAiC,aAAA,CAAC1C,OAAA,CAAA2C,MAAM,EAAAnB,QAAA;MAACY,GAAG,EAAE,IAAI,CAACA,GAAI;MAACQ,KAAK,EAAE,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI;IAAE,GAAK,IAAI,CAACD,KAAK,CAAG,CAAC;EAC5E;AACF;AAACE,OAAA,CAAAd,QAAA,GAAAA,QAAA"}
|
|
@@ -32,6 +32,11 @@ class GAMBannerAd extends _react.default.Component {
|
|
|
32
32
|
_GoogleMobileAdsBannerViewNativeComponent.Commands.recordManualImpression(this.ref.current);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
+
load() {
|
|
36
|
+
if (this.ref.current) {
|
|
37
|
+
_GoogleMobileAdsBannerViewNativeComponent.Commands.load(this.ref.current);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
35
40
|
render() {
|
|
36
41
|
return /*#__PURE__*/_react.default.createElement(_BaseAd.BaseAd, _extends({
|
|
37
42
|
ref: this.ref
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_BaseAd","_GoogleMobileAdsBannerViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","GAMBannerAd","React","Component","ref","createRef","recordManualImpression","current","Commands","render","createElement","BaseAd","props","exports"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":";;;;;;AAiBA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,yCAAA,GAAAF,OAAA;AAAiG,SAAAG,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAL,wBAAAS,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAW,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA,KApBjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,MAAMI,WAAW,SAASC,cAAK,CAACC,SAAS,CAAmB;EACzDC,GAAG,gBAAG,IAAAC,gBAAS,EAAqD,CAAC;EAE7EC,sBAAsBA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACF,GAAG,CAACG,OAAO,EAAE;MACpBC,kDAAQ,CAACF,sBAAsB,CAAC,IAAI,CAACF,GAAG,CAACG,OAAO,CAAC;IACnD;EACF;EAEAE,MAAMA,CAAA,EAAG;IACP,
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_BaseAd","_GoogleMobileAdsBannerViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","GAMBannerAd","React","Component","ref","createRef","recordManualImpression","current","Commands","load","render","createElement","BaseAd","props","exports"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ var _codegenNativeComponent = _interopRequireDefault(require("react-native/Libra
|
|
|
8
8
|
var _codegenNativeCommands = _interopRequireDefault(require("react-native/Libraries/Utilities/codegenNativeCommands"));
|
|
9
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
10
|
const Commands = (0, _codegenNativeCommands.default)({
|
|
11
|
-
supportedCommands: ['recordManualImpression']
|
|
11
|
+
supportedCommands: ['recordManualImpression', 'load']
|
|
12
12
|
});
|
|
13
13
|
exports.Commands = Commands;
|
|
14
14
|
var _default = (0, _codegenNativeComponent.default)('RNGoogleMobileAdsBannerView');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","_codegenNativeCommands","obj","__esModule","default","Commands","codegenNativeCommands","supportedCommands","exports","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA2F,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;
|
|
1
|
+
{"version":3,"names":["_codegenNativeComponent","_interopRequireDefault","require","_codegenNativeCommands","obj","__esModule","default","Commands","codegenNativeCommands","supportedCommands","exports","_default","codegenNativeComponent"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":";;;;;;AAGA,IAAAA,uBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA2F,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AA8BpF,MAAMG,QAAwB,GAAG,IAAAC,8BAAqB,EAAiB;EAC5EC,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,MAAM;AACtD,CAAC,CAAC;AAACC,OAAA,CAAAH,QAAA,GAAAA,QAAA;AAAA,IAAAI,QAAA,GAEY,IAAAC,+BAAsB,EACnC,6BACF,CAAC;AAAAF,OAAA,CAAAJ,OAAA,GAAAK,QAAA"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useForeground = useForeground;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
/*
|
|
10
|
+
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
11
|
+
*
|
|
12
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13
|
+
* you may not use this library except in compliance with the License.
|
|
14
|
+
* You may obtain a copy of the License at
|
|
15
|
+
*
|
|
16
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
17
|
+
*
|
|
18
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
19
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
20
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
21
|
+
* See the License for the specific language governing permissions and
|
|
22
|
+
* limitations under the License.
|
|
23
|
+
*
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* A custom hook that invokes a callback when the app transitions to the foreground.
|
|
28
|
+
*
|
|
29
|
+
* @param {Function} callback - The function to be called when the app has come to the foreground.
|
|
30
|
+
*/
|
|
31
|
+
function useForeground(callback) {
|
|
32
|
+
const appState = (0, _react.useRef)(_reactNative.AppState.currentState);
|
|
33
|
+
(0, _react.useEffect)(() => {
|
|
34
|
+
const subscription = _reactNative.AppState.addEventListener('change', nextAppState => {
|
|
35
|
+
if (appState.current === 'background' && nextAppState === 'active') {
|
|
36
|
+
callback();
|
|
37
|
+
}
|
|
38
|
+
appState.current = nextAppState;
|
|
39
|
+
});
|
|
40
|
+
return () => {
|
|
41
|
+
subscription.remove();
|
|
42
|
+
};
|
|
43
|
+
}, []);
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=useForeground.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","useForeground","callback","appState","useRef","AppState","currentState","useEffect","subscription","addEventListener","nextAppState","current","remove"],"sourceRoot":"../../../src","sources":["hooks/useForeground.ts"],"mappings":";;;;;;AAiBA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAlBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACO,SAASE,aAAaA,CAACC,QAAoB,EAAE;EAClD,MAAMC,QAAQ,GAAG,IAAAC,aAAM,EAACC,qBAAQ,CAACC,YAAY,CAAC;EAE9C,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,YAAY,GAAGH,qBAAQ,CAACI,gBAAgB,CAAC,QAAQ,EAAEC,YAAY,IAAI;MACvE,IAAIP,QAAQ,CAACQ,OAAO,KAAK,YAAY,IAAID,YAAY,KAAK,QAAQ,EAAE;QAClER,QAAQ,CAAC,CAAC;MACZ;MACAC,QAAQ,CAACQ,OAAO,GAAGD,YAAY;IACjC,CAAC,CAAC;IAEF,OAAO,MAAM;MACXF,YAAY,CAACI,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR"}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -30,6 +30,7 @@ var _exportNames = {
|
|
|
30
30
|
useInterstitialAd: true,
|
|
31
31
|
useRewardedAd: true,
|
|
32
32
|
useRewardedInterstitialAd: true,
|
|
33
|
+
useForeground: true,
|
|
33
34
|
RevenuePrecisions: true
|
|
34
35
|
};
|
|
35
36
|
Object.defineProperty(exports, "AdEventType", {
|
|
@@ -177,6 +178,12 @@ Object.defineProperty(exports, "useAppOpenAd", {
|
|
|
177
178
|
return _useAppOpenAd.useAppOpenAd;
|
|
178
179
|
}
|
|
179
180
|
});
|
|
181
|
+
Object.defineProperty(exports, "useForeground", {
|
|
182
|
+
enumerable: true,
|
|
183
|
+
get: function () {
|
|
184
|
+
return _useForeground.useForeground;
|
|
185
|
+
}
|
|
186
|
+
});
|
|
180
187
|
Object.defineProperty(exports, "useInterstitialAd", {
|
|
181
188
|
enumerable: true,
|
|
182
189
|
get: function () {
|
|
@@ -220,6 +227,7 @@ var _useAppOpenAd = require("./hooks/useAppOpenAd");
|
|
|
220
227
|
var _useInterstitialAd = require("./hooks/useInterstitialAd");
|
|
221
228
|
var _useRewardedAd = require("./hooks/useRewardedAd");
|
|
222
229
|
var _useRewardedInterstitialAd = require("./hooks/useRewardedInterstitialAd");
|
|
230
|
+
var _useForeground = require("./hooks/useForeground");
|
|
223
231
|
var _constants = require("./common/constants");
|
|
224
232
|
var _types = require("./types");
|
|
225
233
|
Object.keys(_types).forEach(function (key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_version","require","_MobileAds","_interopRequireWildcard","_AdsConsentDebugGeography","_AdsConsentPurposes","_AdsConsentSpecialFeatures","_AdsConsentStatus","_AdsConsentPrivacyOptionsRequirementStatus","_MaxAdContentRating","_TestIds","_AdEventType","_BannerAdSize","_GAMAdEventType","_RewardedAdEventType","_AdsConsent","_AppOpenAd","_InterstitialAd","_RewardedAd","_RewardedInterstitialAd","_BannerAd","_GAMBannerAd","_GAMInterstitialAd","_useAppOpenAd","_useInterstitialAd","_useRewardedAd","_useRewardedInterstitialAd","_constants","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","SDK_VERSION","version"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_version","require","_MobileAds","_interopRequireWildcard","_AdsConsentDebugGeography","_AdsConsentPurposes","_AdsConsentSpecialFeatures","_AdsConsentStatus","_AdsConsentPrivacyOptionsRequirementStatus","_MaxAdContentRating","_TestIds","_AdEventType","_BannerAdSize","_GAMAdEventType","_RewardedAdEventType","_AdsConsent","_AppOpenAd","_InterstitialAd","_RewardedAd","_RewardedInterstitialAd","_BannerAd","_GAMBannerAd","_GAMInterstitialAd","_useAppOpenAd","_useInterstitialAd","_useRewardedAd","_useRewardedInterstitialAd","_useForeground","_constants","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","SDK_VERSION","version"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
package/lib/commonjs/version.js
CHANGED
|
@@ -16,15 +16,21 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
16
16
|
*
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
|
-
import React from 'react';
|
|
19
|
+
import React, { createRef } from 'react';
|
|
20
20
|
import { BaseAd } from './BaseAd';
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
21
|
+
import { Commands } from './GoogleMobileAdsBannerViewNativeComponent';
|
|
22
|
+
export class BannerAd extends React.Component {
|
|
23
|
+
ref = /*#__PURE__*/createRef();
|
|
24
|
+
load() {
|
|
25
|
+
if (this.ref.current) {
|
|
26
|
+
Commands.load(this.ref.current);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
render() {
|
|
30
|
+
return /*#__PURE__*/React.createElement(BaseAd, _extends({
|
|
31
|
+
ref: this.ref,
|
|
32
|
+
sizes: [this.props.size]
|
|
33
|
+
}, this.props));
|
|
34
|
+
}
|
|
29
35
|
}
|
|
30
36
|
//# sourceMappingURL=BannerAd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","BaseAd","BannerAd","
|
|
1
|
+
{"version":3,"names":["React","createRef","BaseAd","Commands","BannerAd","Component","ref","load","current","render","createElement","_extends","sizes","props","size"],"sourceRoot":"../../../src","sources":["ads/BannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AAExC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAAoCC,QAAQ,QAAQ,4CAA4C;AAEhG,OAAO,MAAMC,QAAQ,SAASJ,KAAK,CAACK,SAAS,CAAgB;EACnDC,GAAG,gBAAGL,SAAS,CAAqD,CAAC;EAE7EM,IAAIA,CAAA,EAAG;IACL,IAAI,IAAI,CAACD,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACI,IAAI,CAAC,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC;IACjC;EACF;EAEAC,MAAMA,CAAA,EAAG;IACP,oBAAOT,KAAA,CAAAU,aAAA,CAACR,MAAM,EAAAS,QAAA;MAACL,GAAG,EAAE,IAAI,CAACA,GAAI;MAACM,KAAK,EAAE,CAAC,IAAI,CAACC,KAAK,CAACC,IAAI;IAAE,GAAK,IAAI,CAACD,KAAK,CAAG,CAAC;EAC5E;AACF"}
|
|
@@ -26,6 +26,11 @@ export class GAMBannerAd extends React.Component {
|
|
|
26
26
|
Commands.recordManualImpression(this.ref.current);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
+
load() {
|
|
30
|
+
if (this.ref.current) {
|
|
31
|
+
Commands.load(this.ref.current);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
29
34
|
render() {
|
|
30
35
|
return /*#__PURE__*/React.createElement(BaseAd, _extends({
|
|
31
36
|
ref: this.ref
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createRef","BaseAd","Commands","GAMBannerAd","Component","ref","recordManualImpression","current","render","createElement","_extends","props"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AAExC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAAoCC,QAAQ,QAAQ,4CAA4C;AAEhG,OAAO,MAAMC,WAAW,SAASJ,KAAK,CAACK,SAAS,CAAmB;EACzDC,GAAG,gBAAGL,SAAS,CAAqD,CAAC;EAE7EM,sBAAsBA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACD,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACI,sBAAsB,CAAC,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC;IACnD;EACF;EAEAC,MAAMA,CAAA,EAAG;IACP,
|
|
1
|
+
{"version":3,"names":["React","createRef","BaseAd","Commands","GAMBannerAd","Component","ref","recordManualImpression","current","load","render","createElement","_extends","props"],"sourceRoot":"../../../src","sources":["ads/GAMBannerAd.tsx"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AAExC,SAASC,MAAM,QAAQ,UAAU;AACjC,SAAoCC,QAAQ,QAAQ,4CAA4C;AAEhG,OAAO,MAAMC,WAAW,SAASJ,KAAK,CAACK,SAAS,CAAmB;EACzDC,GAAG,gBAAGL,SAAS,CAAqD,CAAC;EAE7EM,sBAAsBA,CAAA,EAAG;IACvB,IAAI,IAAI,CAACD,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACI,sBAAsB,CAAC,IAAI,CAACD,GAAG,CAACE,OAAO,CAAC;IACnD;EACF;EAEAC,IAAIA,CAAA,EAAG;IACL,IAAI,IAAI,CAACH,GAAG,CAACE,OAAO,EAAE;MACpBL,QAAQ,CAACM,IAAI,CAAC,IAAI,CAACH,GAAG,CAACE,OAAO,CAAC;IACjC;EACF;EAEAE,MAAMA,CAAA,EAAG;IACP,oBAAOV,KAAA,CAAAW,aAAA,CAACT,MAAM,EAAAU,QAAA;MAACN,GAAG,EAAE,IAAI,CAACA;IAAI,GAAK,IAAI,CAACO,KAAK,CAAG,CAAC;EAClD;AACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
2
2
|
import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
|
|
3
3
|
export const Commands = codegenNativeCommands({
|
|
4
|
-
supportedCommands: ['recordManualImpression']
|
|
4
|
+
supportedCommands: ['recordManualImpression', 'load']
|
|
5
5
|
});
|
|
6
6
|
export default codegenNativeComponent('RNGoogleMobileAdsBannerView');
|
|
7
7
|
//# sourceMappingURL=GoogleMobileAdsBannerViewNativeComponent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["codegenNativeComponent","codegenNativeCommands","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":"AAGA,OAAOA,sBAAsB,MAAM,yDAAyD;AAC5F,OAAOC,qBAAqB,MAAM,wDAAwD;
|
|
1
|
+
{"version":3,"names":["codegenNativeComponent","codegenNativeCommands","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"mappings":"AAGA,OAAOA,sBAAsB,MAAM,yDAAyD;AAC5F,OAAOC,qBAAqB,MAAM,wDAAwD;AA8B1F,OAAO,MAAMC,QAAwB,GAAGD,qBAAqB,CAAiB;EAC5EE,iBAAiB,EAAE,CAAC,wBAAwB,EAAE,MAAM;AACtD,CAAC,CAAC;AAEF,eAAeH,sBAAsB,CACnC,6BACF,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this library except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
import { useEffect, useRef } from 'react';
|
|
19
|
+
import { AppState } from 'react-native';
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* A custom hook that invokes a callback when the app transitions to the foreground.
|
|
23
|
+
*
|
|
24
|
+
* @param {Function} callback - The function to be called when the app has come to the foreground.
|
|
25
|
+
*/
|
|
26
|
+
export function useForeground(callback) {
|
|
27
|
+
const appState = useRef(AppState.currentState);
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
const subscription = AppState.addEventListener('change', nextAppState => {
|
|
30
|
+
if (appState.current === 'background' && nextAppState === 'active') {
|
|
31
|
+
callback();
|
|
32
|
+
}
|
|
33
|
+
appState.current = nextAppState;
|
|
34
|
+
});
|
|
35
|
+
return () => {
|
|
36
|
+
subscription.remove();
|
|
37
|
+
};
|
|
38
|
+
}, []);
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=useForeground.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","AppState","useForeground","callback","appState","currentState","subscription","addEventListener","nextAppState","current","remove"],"sourceRoot":"../../../src","sources":["hooks/useForeground.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACzC,SAASC,QAAQ,QAAQ,cAAc;;AAEvC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,QAAoB,EAAE;EAClD,MAAMC,QAAQ,GAAGJ,MAAM,CAACC,QAAQ,CAACI,YAAY,CAAC;EAE9CN,SAAS,CAAC,MAAM;IACd,MAAMO,YAAY,GAAGL,QAAQ,CAACM,gBAAgB,CAAC,QAAQ,EAAEC,YAAY,IAAI;MACvE,IAAIJ,QAAQ,CAACK,OAAO,KAAK,YAAY,IAAID,YAAY,KAAK,QAAQ,EAAE;QAClEL,QAAQ,CAAC,CAAC;MACZ;MACAC,QAAQ,CAACK,OAAO,GAAGD,YAAY;IACjC,CAAC,CAAC;IAEF,OAAO,MAAM;MACXF,YAAY,CAACI,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AACR"}
|
package/lib/module/index.js
CHANGED
|
@@ -43,6 +43,7 @@ export { useAppOpenAd } from './hooks/useAppOpenAd';
|
|
|
43
43
|
export { useInterstitialAd } from './hooks/useInterstitialAd';
|
|
44
44
|
export { useRewardedAd } from './hooks/useRewardedAd';
|
|
45
45
|
export { useRewardedInterstitialAd } from './hooks/useRewardedInterstitialAd';
|
|
46
|
+
export { useForeground } from './hooks/useForeground';
|
|
46
47
|
export { RevenuePrecisions } from './common/constants';
|
|
47
48
|
export * from './types';
|
|
48
49
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["version","SDK_VERSION","default","MobileAds","AdsConsentDebugGeography","AdsConsentPurposes","AdsConsentSpecialFeatures","AdsConsentStatus","AdsConsentPrivacyOptionsRequirementStatus","MaxAdContentRating","TestIds","AdEventType","BannerAdSize","GAMBannerAdSize","GAMAdEventType","RewardedAdEventType","AdsConsent","AppOpenAd","InterstitialAd","RewardedAd","RewardedInterstitialAd","BannerAd","GAMBannerAd","GAMInterstitialAd","useAppOpenAd","useInterstitialAd","useRewardedAd","useRewardedInterstitialAd","RevenuePrecisions"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,QAAQ,WAAW;;AAEnC;AACA,OAAO,MAAMC,WAAW,GAAGD,OAAO;AAElC,SAASE,OAAO,EAAEC,SAAS,QAAQ,aAAa;AAChD,SAASC,wBAAwB,QAAQ,4BAA4B;AACrE,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,yBAAyB,QAAQ,6BAA6B;AACvE,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,yCAAyC,QAAQ,6CAA6C;AACvG,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,YAAY,EAAEC,eAAe,QAAQ,gBAAgB;AAC9D,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,cAAc,QAAQ,sBAAsB;AACrD,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,yBAAyB,QAAQ,mCAAmC;AAC7E,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,cAAc,SAAS"}
|
|
1
|
+
{"version":3,"names":["version","SDK_VERSION","default","MobileAds","AdsConsentDebugGeography","AdsConsentPurposes","AdsConsentSpecialFeatures","AdsConsentStatus","AdsConsentPrivacyOptionsRequirementStatus","MaxAdContentRating","TestIds","AdEventType","BannerAdSize","GAMBannerAdSize","GAMAdEventType","RewardedAdEventType","AdsConsent","AppOpenAd","InterstitialAd","RewardedAd","RewardedInterstitialAd","BannerAd","GAMBannerAd","GAMInterstitialAd","useAppOpenAd","useInterstitialAd","useRewardedAd","useRewardedInterstitialAd","useForeground","RevenuePrecisions"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,QAAQ,WAAW;;AAEnC;AACA,OAAO,MAAMC,WAAW,GAAGD,OAAO;AAElC,SAASE,OAAO,EAAEC,SAAS,QAAQ,aAAa;AAChD,SAASC,wBAAwB,QAAQ,4BAA4B;AACrE,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,yBAAyB,QAAQ,6BAA6B;AACvE,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,yCAAyC,QAAQ,6CAA6C;AACvG,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SAASC,OAAO,QAAQ,WAAW;AACnC,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,YAAY,EAAEC,eAAe,QAAQ,gBAAgB;AAC9D,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,cAAc,QAAQ,sBAAsB;AACrD,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,yBAAyB,QAAQ,mCAAmC;AAC7E,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,cAAc,SAAS"}
|
package/lib/module/version.js
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import { BannerAdProps } from '../types/BannerAdProps';
|
|
3
|
-
export declare
|
|
3
|
+
export declare class BannerAd extends React.Component<BannerAdProps> {
|
|
4
|
+
private ref;
|
|
5
|
+
load(): void;
|
|
6
|
+
render(): JSX.Element;
|
|
7
|
+
}
|
|
4
8
|
//# sourceMappingURL=BannerAd.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/BannerAd.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"BannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/BannerAd.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD,qBAAa,QAAS,SAAQ,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAmE;IAE9E,IAAI;IAMJ,MAAM;CAGP"}
|
|
@@ -3,6 +3,7 @@ import { GAMBannerAdProps } from '../types/BannerAdProps';
|
|
|
3
3
|
export declare class GAMBannerAd extends React.Component<GAMBannerAdProps> {
|
|
4
4
|
private ref;
|
|
5
5
|
recordManualImpression(): void;
|
|
6
|
+
load(): void;
|
|
6
7
|
render(): JSX.Element;
|
|
7
8
|
}
|
|
8
9
|
//# sourceMappingURL=GAMBannerAd.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GAMBannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/GAMBannerAd.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,qBAAa,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAChE,OAAO,CAAC,GAAG,CAAmE;IAE9E,sBAAsB;IAMtB,MAAM;CAGP"}
|
|
1
|
+
{"version":3,"file":"GAMBannerAd.d.ts","sourceRoot":"","sources":["../../../src/ads/GAMBannerAd.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAoB,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,qBAAa,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC;IAChE,OAAO,CAAC,GAAG,CAAmE;IAE9E,sBAAsB;IAMtB,IAAI;IAMJ,MAAM;CAGP"}
|
|
@@ -23,6 +23,7 @@ export interface NativeProps extends ViewProps {
|
|
|
23
23
|
export declare type ComponentType = HostComponent<NativeProps>;
|
|
24
24
|
interface NativeCommands {
|
|
25
25
|
recordManualImpression: (viewRef: React.ElementRef<ComponentType>) => void;
|
|
26
|
+
load: (viewRef: React.ElementRef<ComponentType>) => void;
|
|
26
27
|
}
|
|
27
28
|
export declare const Commands: NativeCommands;
|
|
28
29
|
declare const _default: HostComponent<NativeProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GoogleMobileAdsBannerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;AAI7F,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB,EAAE,OAAO,CAAC;IAClC,aAAa,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,oBAAY,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAEvD,UAAU,cAAc;IACtB,sBAAsB,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"GoogleMobileAdsBannerViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/ads/GoogleMobileAdsBannerViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;AAI7F,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB,EAAE,OAAO,CAAC;IAClC,aAAa,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,oBAAY,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAEvD,UAAU,cAAc;IACtB,sBAAsB,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;IAC3E,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC;CAC1D;AAED,eAAO,MAAM,QAAQ,EAAE,cAErB,CAAC;;AAEH,wBAEgC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A custom hook that invokes a callback when the app transitions to the foreground.
|
|
3
|
+
*
|
|
4
|
+
* @param {Function} callback - The function to be called when the app has come to the foreground.
|
|
5
|
+
*/
|
|
6
|
+
export declare function useForeground(callback: () => void): void;
|
|
7
|
+
//# sourceMappingURL=useForeground.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useForeground.d.ts","sourceRoot":"","sources":["../../../src/hooks/useForeground.ts"],"names":[],"mappings":"AAoBA;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,IAAI,QAejD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "13.
|
|
1
|
+
export declare const SDK_VERSION = "13.6.0";
|
|
2
2
|
export { default, MobileAds } from './MobileAds';
|
|
3
3
|
export { AdsConsentDebugGeography } from './AdsConsentDebugGeography';
|
|
4
4
|
export { AdsConsentPurposes } from './AdsConsentPurposes';
|
|
@@ -23,6 +23,7 @@ export { useAppOpenAd } from './hooks/useAppOpenAd';
|
|
|
23
23
|
export { useInterstitialAd } from './hooks/useInterstitialAd';
|
|
24
24
|
export { useRewardedAd } from './hooks/useRewardedAd';
|
|
25
25
|
export { useRewardedInterstitialAd } from './hooks/useRewardedInterstitialAd';
|
|
26
|
+
export { useForeground } from './hooks/useForeground';
|
|
26
27
|
export { RevenuePrecisions } from './common/constants';
|
|
27
28
|
export * from './types';
|
|
28
29
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,WAAW,WAAU,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,yCAAyC,EAAE,MAAM,6CAA6C,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,WAAW,WAAU,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,yCAAyC,EAAE,MAAM,6CAA6C,CAAC;AACxG,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,cAAc,SAAS,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "13.
|
|
1
|
+
export declare const version = "13.6.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-google-mobile-ads",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.6.0",
|
|
4
4
|
"author": "Invertase <oss@invertase.io> (http://invertase.io)",
|
|
5
5
|
"description": "React Native Google Mobile Ads is an easy way to monetize mobile apps with targeted, in-app advertising.",
|
|
6
6
|
"main": "lib/commonjs/index.js",
|
package/src/ads/BannerAd.tsx
CHANGED
|
@@ -15,10 +15,21 @@
|
|
|
15
15
|
*
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
import React from 'react';
|
|
18
|
+
import React, { createRef } from 'react';
|
|
19
19
|
import { BannerAdProps } from '../types/BannerAdProps';
|
|
20
20
|
import { BaseAd } from './BaseAd';
|
|
21
|
+
import GoogleMobileAdsBannerView, { Commands } from './GoogleMobileAdsBannerViewNativeComponent';
|
|
21
22
|
|
|
22
|
-
export
|
|
23
|
-
|
|
23
|
+
export class BannerAd extends React.Component<BannerAdProps> {
|
|
24
|
+
private ref = createRef<React.ElementRef<typeof GoogleMobileAdsBannerView>>();
|
|
25
|
+
|
|
26
|
+
load() {
|
|
27
|
+
if (this.ref.current) {
|
|
28
|
+
Commands.load(this.ref.current);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
render() {
|
|
33
|
+
return <BaseAd ref={this.ref} sizes={[this.props.size]} {...this.props} />;
|
|
34
|
+
}
|
|
24
35
|
}
|
package/src/ads/GAMBannerAd.tsx
CHANGED
|
@@ -29,10 +29,11 @@ export type ComponentType = HostComponent<NativeProps>;
|
|
|
29
29
|
|
|
30
30
|
interface NativeCommands {
|
|
31
31
|
recordManualImpression: (viewRef: React.ElementRef<ComponentType>) => void;
|
|
32
|
+
load: (viewRef: React.ElementRef<ComponentType>) => void;
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
|
|
35
|
-
supportedCommands: ['recordManualImpression'],
|
|
36
|
+
supportedCommands: ['recordManualImpression', 'load'],
|
|
36
37
|
});
|
|
37
38
|
|
|
38
39
|
export default codegenNativeComponent<NativeProps>(
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2016-present Invertase Limited & Contributors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this library except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
import { useEffect, useRef } from 'react';
|
|
19
|
+
import { AppState } from 'react-native';
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* A custom hook that invokes a callback when the app transitions to the foreground.
|
|
23
|
+
*
|
|
24
|
+
* @param {Function} callback - The function to be called when the app has come to the foreground.
|
|
25
|
+
*/
|
|
26
|
+
export function useForeground(callback: () => void) {
|
|
27
|
+
const appState = useRef(AppState.currentState);
|
|
28
|
+
|
|
29
|
+
useEffect(() => {
|
|
30
|
+
const subscription = AppState.addEventListener('change', nextAppState => {
|
|
31
|
+
if (appState.current === 'background' && nextAppState === 'active') {
|
|
32
|
+
callback();
|
|
33
|
+
}
|
|
34
|
+
appState.current = nextAppState;
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
return () => {
|
|
38
|
+
subscription.remove();
|
|
39
|
+
};
|
|
40
|
+
}, []);
|
|
41
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -44,5 +44,6 @@ export { useAppOpenAd } from './hooks/useAppOpenAd';
|
|
|
44
44
|
export { useInterstitialAd } from './hooks/useInterstitialAd';
|
|
45
45
|
export { useRewardedAd } from './hooks/useRewardedAd';
|
|
46
46
|
export { useRewardedInterstitialAd } from './hooks/useRewardedInterstitialAd';
|
|
47
|
+
export { useForeground } from './hooks/useForeground';
|
|
47
48
|
export { RevenuePrecisions } from './common/constants';
|
|
48
49
|
export * from './types';
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Generated by genversion.
|
|
2
|
-
export const version = '13.
|
|
2
|
+
export const version = '13.6.0';
|