react-native-google-mobile-ads 16.2.3 → 16.3.1
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/__tests__/requestOptions.test.tsx +80 -2
- package/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsCommon.java +16 -0
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsCommon.mm +7 -0
- package/ios/RNGoogleMobileAds/RNGoogleMobileAdsNativeView.mm +24 -0
- package/lib/commonjs/validateAdRequestOptions.js +11 -0
- package/lib/commonjs/validateAdRequestOptions.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/validateAdRequestOptions.js +11 -0
- package/lib/module/validateAdRequestOptions.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/types/RequestOptions.d.ts +29 -0
- package/lib/typescript/types/RequestOptions.d.ts.map +1 -1
- package/lib/typescript/validateAdRequestOptions.d.ts.map +1 -1
- package/lib/typescript/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/types/RequestOptions.ts +28 -0
- package/src/validateAdRequestOptions.ts +14 -0
- package/src/version.ts +1 -1
|
@@ -1,4 +1,82 @@
|
|
|
1
|
+
import { validateAdRequestOptions } from '../src/validateAdRequestOptions';
|
|
2
|
+
|
|
1
3
|
describe('Admob RequestOptions', () => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
+
describe('publisherProvidedSignals', () => {
|
|
5
|
+
it('throws if publisherProvidedSignals is not an object', () => {
|
|
6
|
+
expect(() =>
|
|
7
|
+
validateAdRequestOptions({
|
|
8
|
+
// @ts-ignore
|
|
9
|
+
publisherProvidedSignals: 'not-an-object',
|
|
10
|
+
}),
|
|
11
|
+
).toThrow("'options.publisherProvidedSignals' expected an object of key/value pairs");
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('throws if a publisherProvidedSignals value is not an array', () => {
|
|
15
|
+
expect(() =>
|
|
16
|
+
validateAdRequestOptions({
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
publisherProvidedSignals: { IAB_CONTENT_2_2: 'not-an-array' },
|
|
19
|
+
}),
|
|
20
|
+
).toThrow("'options.publisherProvidedSignals.IAB_CONTENT_2_2' expected an array of numbers");
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
it('sets publisherProvidedSignals if valid', () => {
|
|
24
|
+
const result = validateAdRequestOptions({
|
|
25
|
+
publisherProvidedSignals: { IAB_CONTENT_2_2: [533, 483, 1020] },
|
|
26
|
+
});
|
|
27
|
+
expect(result.publisherProvidedSignals).toEqual({
|
|
28
|
+
IAB_CONTENT_2_2: [533, 483, 1020],
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
it('passes through multiple signal keys', () => {
|
|
33
|
+
const pps = {
|
|
34
|
+
IAB_CONTENT_2_2: [533, 483],
|
|
35
|
+
IAB_AUDIENCE_1_1: [6, 7],
|
|
36
|
+
};
|
|
37
|
+
const result = validateAdRequestOptions({ publisherProvidedSignals: pps });
|
|
38
|
+
expect(result.publisherProvidedSignals).toEqual(pps);
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
it('does not set publisherProvidedSignals if not provided', () => {
|
|
42
|
+
const result = validateAdRequestOptions({});
|
|
43
|
+
expect(result.publisherProvidedSignals).toBeUndefined();
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
describe('publisherProvidedId', () => {
|
|
48
|
+
it('throws if publisherProvidedId is not a string', () => {
|
|
49
|
+
expect(() =>
|
|
50
|
+
validateAdRequestOptions({
|
|
51
|
+
// @ts-ignore
|
|
52
|
+
publisherProvidedId: 123,
|
|
53
|
+
}),
|
|
54
|
+
).toThrow("'options.publisherProvidedId' expected a string value");
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it('sets publisherProvidedId if valid', () => {
|
|
58
|
+
const result = validateAdRequestOptions({
|
|
59
|
+
publisherProvidedId: 'user-abc-123',
|
|
60
|
+
});
|
|
61
|
+
expect(result.publisherProvidedId).toBe('user-abc-123');
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
describe('customTargeting', () => {
|
|
66
|
+
it('throws if customTargeting is not an object', () => {
|
|
67
|
+
expect(() =>
|
|
68
|
+
validateAdRequestOptions({
|
|
69
|
+
// @ts-ignore
|
|
70
|
+
customTargeting: 'not-an-object',
|
|
71
|
+
}),
|
|
72
|
+
).toThrow("'options.customTargeting' expected an object of key/value pairs");
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
it('sets customTargeting if valid', () => {
|
|
76
|
+
const result = validateAdRequestOptions({
|
|
77
|
+
customTargeting: { key: 'value' },
|
|
78
|
+
});
|
|
79
|
+
expect(result.customTargeting).toEqual({ key: 'value' });
|
|
80
|
+
});
|
|
81
|
+
});
|
|
4
82
|
});
|
package/android/src/main/java/io/invertase/googlemobileads/ReactNativeGoogleMobileAdsCommon.java
CHANGED
|
@@ -23,7 +23,9 @@ import android.view.Display;
|
|
|
23
23
|
import android.view.ViewGroup;
|
|
24
24
|
import com.facebook.react.bridge.Arguments;
|
|
25
25
|
import com.facebook.react.bridge.ReactContext;
|
|
26
|
+
import com.facebook.react.bridge.ReadableArray;
|
|
26
27
|
import com.facebook.react.bridge.ReadableMap;
|
|
28
|
+
import com.facebook.react.bridge.ReadableMapKeySetIterator;
|
|
27
29
|
import com.facebook.react.bridge.WritableMap;
|
|
28
30
|
import com.google.ads.mediation.admob.AdMobAdapter;
|
|
29
31
|
import com.google.android.gms.ads.AdError;
|
|
@@ -167,6 +169,20 @@ public class ReactNativeGoogleMobileAdsCommon {
|
|
|
167
169
|
}
|
|
168
170
|
}
|
|
169
171
|
|
|
172
|
+
if (adRequestOptions.hasKey("publisherProvidedSignals")) {
|
|
173
|
+
ReadableMap ppsMap = adRequestOptions.getMap("publisherProvidedSignals");
|
|
174
|
+
ReadableMapKeySetIterator iterator = ppsMap.keySetIterator();
|
|
175
|
+
while (iterator.hasNextKey()) {
|
|
176
|
+
String key = iterator.nextKey();
|
|
177
|
+
ReadableArray values = ppsMap.getArray(key);
|
|
178
|
+
ArrayList<Integer> intValues = new ArrayList<>();
|
|
179
|
+
for (int i = 0; i < values.size(); i++) {
|
|
180
|
+
intValues.add(values.getInt(i));
|
|
181
|
+
}
|
|
182
|
+
extras.putIntegerArrayList(key, intValues);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
170
186
|
builder.addNetworkExtrasBundle(AdMobAdapter.class, extras);
|
|
171
187
|
|
|
172
188
|
if (adRequestOptions.hasKey("keywords")) {
|
|
@@ -65,6 +65,13 @@ NSString *const GOOGLE_MOBILE_ADS_EVENT_REWARDED_EARNED_REWARD = @"rewarded_earn
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
+
if (adRequestOptions[@"publisherProvidedSignals"]) {
|
|
69
|
+
NSDictionary *pps = adRequestOptions[@"publisherProvidedSignals"];
|
|
70
|
+
for (NSString *key in pps) {
|
|
71
|
+
extras[key] = pps[key];
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
68
75
|
GADExtras *networkExtras = [[GADExtras alloc] init];
|
|
69
76
|
networkExtras.additionalParameters = extras;
|
|
70
77
|
[request registerAdNetworkExtras:networkExtras];
|
|
@@ -104,6 +104,23 @@ using namespace facebook::react;
|
|
|
104
104
|
RCTRNGoogleMobileAdsNativeViewHandleCommand(self, commandName, args);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
+
- (UIView *)findViewByTag:(NSInteger)targetTag inView:(UIView *)parentView {
|
|
108
|
+
for (UIView *subview in parentView.subviews) {
|
|
109
|
+
if (subview.tag == targetTag) {
|
|
110
|
+
return subview;
|
|
111
|
+
}
|
|
112
|
+
if ([subview isKindOfClass:[RCTViewComponentView class]]) {
|
|
113
|
+
UIView *contentView = ((RCTViewComponentView *)subview).contentView;
|
|
114
|
+
if (contentView && contentView.tag == targetTag) {
|
|
115
|
+
return contentView;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
UIView *found = [self findViewByTag:targetTag inView:subview];
|
|
119
|
+
if (found) return found;
|
|
120
|
+
}
|
|
121
|
+
return nil;
|
|
122
|
+
}
|
|
123
|
+
|
|
107
124
|
#else
|
|
108
125
|
#pragma mark - Paper specific
|
|
109
126
|
|
|
@@ -128,7 +145,14 @@ using namespace facebook::react;
|
|
|
128
145
|
|
|
129
146
|
- (void)registerAsset:(NSString *)assetType reactTag:(NSInteger)reactTag {
|
|
130
147
|
RCTExecuteOnMainQueue(^{
|
|
148
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
149
|
+
UIView *view = [self findViewByTag:reactTag inView:_nativeAdView];
|
|
150
|
+
if (!view) {
|
|
151
|
+
view = [self findViewByTag:reactTag inView:self];
|
|
152
|
+
}
|
|
153
|
+
#else
|
|
131
154
|
UIView *view = [_bridge.uiManager viewForReactTag:@(reactTag)];
|
|
155
|
+
#endif
|
|
132
156
|
if (!view) {
|
|
133
157
|
RCTLogError(@"Cannot find NativeAssetView with tag #%zd while registering asset type %@",
|
|
134
158
|
reactTag, assetType);
|
|
@@ -105,6 +105,17 @@ function validateAdRequestOptions(options) {
|
|
|
105
105
|
}
|
|
106
106
|
out.publisherProvidedId = options.publisherProvidedId;
|
|
107
107
|
}
|
|
108
|
+
if (options.publisherProvidedSignals) {
|
|
109
|
+
if (!(0, _common.isObject)(options.publisherProvidedSignals)) {
|
|
110
|
+
throw new Error("'options.publisherProvidedSignals' expected an object of key/value pairs");
|
|
111
|
+
}
|
|
112
|
+
Object.entries(options.publisherProvidedSignals).forEach(([key, value]) => {
|
|
113
|
+
if (!(0, _common.isArray)(value)) {
|
|
114
|
+
throw new Error(`'options.publisherProvidedSignals.${key}' expected an array of numbers`);
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
out.publisherProvidedSignals = options.publisherProvidedSignals;
|
|
118
|
+
}
|
|
108
119
|
return out;
|
|
109
120
|
}
|
|
110
121
|
//# sourceMappingURL=validateAdRequestOptions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_common","require","_version","validateAdRequestOptions","options","out","requestAgent","version","isUndefined","isObject","Error","isPropertySet","isBoolean","requestNonPersonalizedAdsOnly","networkExtras","Object","entries","forEach","key","value","isString","keywords","isArray","i","length","keyword","contentUrl","isValidUrl","serverSideVerificationOptions","ssvOptions","userId","customData","customTargeting","publisherProvidedId"],"sourceRoot":"../../src","sources":["validateAdRequestOptions.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_common","require","_version","validateAdRequestOptions","options","out","requestAgent","version","isUndefined","isObject","Error","isPropertySet","isBoolean","requestNonPersonalizedAdsOnly","networkExtras","Object","entries","forEach","key","value","isString","keywords","isArray","i","length","keyword","contentUrl","isValidUrl","serverSideVerificationOptions","ssvOptions","userId","customData","customTargeting","publisherProvidedId","publisherProvidedSignals"],"sourceRoot":"../../src","sources":["validateAdRequestOptions.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/version.js
CHANGED
|
@@ -101,6 +101,17 @@ export function validateAdRequestOptions(options) {
|
|
|
101
101
|
}
|
|
102
102
|
out.publisherProvidedId = options.publisherProvidedId;
|
|
103
103
|
}
|
|
104
|
+
if (options.publisherProvidedSignals) {
|
|
105
|
+
if (!isObject(options.publisherProvidedSignals)) {
|
|
106
|
+
throw new Error("'options.publisherProvidedSignals' expected an object of key/value pairs");
|
|
107
|
+
}
|
|
108
|
+
Object.entries(options.publisherProvidedSignals).forEach(([key, value]) => {
|
|
109
|
+
if (!isArray(value)) {
|
|
110
|
+
throw new Error(`'options.publisherProvidedSignals.${key}' expected an array of numbers`);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
out.publisherProvidedSignals = options.publisherProvidedSignals;
|
|
114
|
+
}
|
|
104
115
|
return out;
|
|
105
116
|
}
|
|
106
117
|
//# sourceMappingURL=validateAdRequestOptions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isPropertySet","isArray","isBoolean","isObject","isString","isUndefined","isValidUrl","version","validateAdRequestOptions","options","out","requestAgent","Error","requestNonPersonalizedAdsOnly","networkExtras","Object","entries","forEach","key","value","keywords","i","length","keyword","contentUrl","serverSideVerificationOptions","ssvOptions","userId","customData","customTargeting","publisherProvidedId"],"sourceRoot":"../../src","sources":["validateAdRequestOptions.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SACEA,aAAa,EACbC,OAAO,EACPC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,WAAW,EACXC,UAAU,QACL,UAAU;AACjB,SAASC,OAAO,QAAQ,WAAW;AAGnC,OAAO,SAASC,wBAAwBA,CAACC,OAAwB,EAAE;EACjE,MAAMC,GAAmB,GAAG;IAC1BC,YAAY,EAAE,gBAAgBJ,OAAO;EACvC,CAAC;EAED,IAAIF,WAAW,CAACI,OAAO,CAAC,EAAE;IACxB,OAAOC,GAAG;EACZ;EAEA,IAAI,CAACP,QAAQ,CAACM,OAAO,CAAC,EAAE;IACtB,MAAM,IAAIG,KAAK,CAAC,oCAAoC,CAAC;EACvD;EAEA,IAAIZ,aAAa,CAACS,OAAO,EAAE,+BAA+B,CAAC,EAAE;IAC3D,IAAI,CAACP,SAAS,CAACO,OAAO,CAACI,6BAA6B,CAAC,EAAE;MACrD,MAAM,IAAID,KAAK,CAAC,kEAAkE,CAAC;IACrF;IAEAF,GAAG,CAACG,6BAA6B,GAAGJ,OAAO,CAACI,6BAA6B;EAC3E;EAEA,IAAIJ,OAAO,CAACK,aAAa,EAAE;IACzB,IAAI,CAACX,QAAQ,CAACM,OAAO,CAACK,aAAa,CAAC,EAAE;MACpC,MAAM,IAAIF,KAAK,CAAC,+DAA+D,CAAC;IAClF;IAEAG,MAAM,CAACC,OAAO,CAACP,OAAO,CAACK,aAAa,CAAC,CAACG,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;MAC9D,IAAI,CAACf,QAAQ,CAACe,KAAK,CAAC,EAAE;QACpB,MAAM,IAAIP,KAAK,CAAC,mEAAmEM,GAAG,GAAG,CAAC;MAC5F;IACF,CAAC,CAAC;IAEFR,GAAG,CAACI,aAAa,GAAGL,OAAO,CAACK,aAAa;EAC3C;EAEA,IAAIL,OAAO,CAACW,QAAQ,EAAE;IACpB,IAAI,CAACnB,OAAO,CAACQ,OAAO,CAACW,QAAQ,CAAC,EAAE;MAC9B,MAAM,IAAIR,KAAK,CAAC,+DAA+D,CAAC;IAClF;IAEA,KAAK,IAAIS,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGZ,OAAO,CAACW,QAAQ,CAACE,MAAM,EAAED,CAAC,EAAE,EAAE;MAChD,MAAME,OAAO,GAAGd,OAAO,CAACW,QAAQ,CAACC,CAAC,CAAC;MAEnC,IAAI,CAACjB,QAAQ,CAACmB,OAAO,CAAC,EAAE;QACtB,MAAM,IAAIX,KAAK,CAAC,+DAA+D,CAAC;MAClF;IACF;IAEAF,GAAG,CAACU,QAAQ,GAAGX,OAAO,CAACW,QAAQ;EACjC;EAEA,IAAIX,OAAO,CAACe,UAAU,EAAE;IACtB,IAAI,CAACpB,QAAQ,CAACK,OAAO,CAACe,UAAU,CAAC,EAAE;MACjC,MAAM,IAAIZ,KAAK,CAAC,8CAA8C,CAAC;IACjE;IAEA,IAAI,CAACN,UAAU,CAACG,OAAO,CAACe,UAAU,CAAC,EAAE;MACnC,MAAM,IAAIZ,KAAK,CAAC,0DAA0D,CAAC;IAC7E;IAEA,IAAIH,OAAO,CAACe,UAAU,CAACF,MAAM,GAAG,GAAG,EAAE;MACnC,MAAM,IAAIV,KAAK,CAAC,yEAAyE,CAAC;IAC5F;IAEAF,GAAG,CAACc,UAAU,GAAGf,OAAO,CAACe,UAAU;EACrC;EAEA,IAAIf,OAAO,CAACE,YAAY,EAAE;IACxB,IAAI,CAACP,QAAQ,CAACK,OAAO,CAACE,YAAY,CAAC,EAAE;MACnC,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;IACnE;IAEAF,GAAG,CAACC,YAAY,GAAGF,OAAO,CAACE,YAAY;EACzC;EAEA,IAAIF,OAAO,CAACgB,6BAA6B,EAAE;IACzC,IAAI,CAACtB,QAAQ,CAACM,OAAO,CAACgB,6BAA6B,CAAC,EAAE;MACpD,MAAM,IAAIb,KAAK,CACb,+EACF,CAAC;IACH;IAEA,MAAMc,UAAU,GAAGjB,OAAO,CAACgB,6BAA6B;IAExD,IAAIC,UAAU,CAACC,MAAM,IAAI,CAACvB,QAAQ,CAACsB,UAAU,CAACC,MAAM,CAAC,EAAE;MACrD,MAAM,IAAIf,KAAK,CAAC,wEAAwE,CAAC;IAC3F;IAEA,IAAIc,UAAU,CAACE,UAAU,IAAI,CAACxB,QAAQ,CAACsB,UAAU,CAACE,UAAU,CAAC,EAAE;MAC7D,MAAM,IAAIhB,KAAK,CAAC,4EAA4E,CAAC;IAC/F;IAEAF,GAAG,CAACe,6BAA6B,GAAGhB,OAAO,CAACgB,6BAA6B;EAC3E;EAEA,IAAIhB,OAAO,CAACoB,eAAe,EAAE;IAC3B,IAAI,CAAC1B,QAAQ,CAACM,OAAO,CAACoB,eAAe,CAAC,EAAE;MACtC,MAAM,IAAIjB,KAAK,CAAC,iEAAiE,CAAC;IACpF;IACAF,GAAG,CAACmB,eAAe,GAAGpB,OAAO,CAACoB,eAAe;EAC/C;EAEA,IAAIpB,OAAO,CAACqB,mBAAmB,EAAE;IAC/B,IAAI,CAAC1B,QAAQ,CAACK,OAAO,CAACqB,mBAAmB,CAAC,EAAE;MAC1C,MAAM,IAAIlB,KAAK,CAAC,uDAAuD,CAAC;IAC1E;IACAF,GAAG,CAACoB,mBAAmB,GAAGrB,OAAO,CAACqB,mBAAmB;EACvD;EAEA,
|
|
1
|
+
{"version":3,"names":["isPropertySet","isArray","isBoolean","isObject","isString","isUndefined","isValidUrl","version","validateAdRequestOptions","options","out","requestAgent","Error","requestNonPersonalizedAdsOnly","networkExtras","Object","entries","forEach","key","value","keywords","i","length","keyword","contentUrl","serverSideVerificationOptions","ssvOptions","userId","customData","customTargeting","publisherProvidedId","publisherProvidedSignals"],"sourceRoot":"../../src","sources":["validateAdRequestOptions.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/version.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "16.
|
|
1
|
+
export declare const SDK_VERSION = "16.3.1";
|
|
2
2
|
export { default, MobileAds } from './MobileAds';
|
|
3
3
|
export { AdsConsentDebugGeography, AdsConsentInfo, AdsConsentInfoOptions, AdsConsentInterface, AdsConsentPrivacyOptionsRequirementStatus, AdsConsentStatus, AdsConsentUserChoices, } from './specs/modules/NativeConsentModule';
|
|
4
4
|
export { AdsConsentPurposes } from './AdsConsentPurposes';
|
|
@@ -100,5 +100,34 @@ export interface RequestOptions {
|
|
|
100
100
|
* See [this article](https://support.google.com/admanager/answer/2880055) for more information.
|
|
101
101
|
*/
|
|
102
102
|
publisherProvidedId?: string;
|
|
103
|
+
/**
|
|
104
|
+
* Publisher Provided Signals (PPS) for Google Ad Manager.
|
|
105
|
+
*
|
|
106
|
+
* PPS allows publishers to send IAB taxonomy signals to help ad buyers
|
|
107
|
+
* evaluate and bid on inventory more effectively.
|
|
108
|
+
*
|
|
109
|
+
* Keys are IAB taxonomy names (e.g. `IAB_CONTENT_2_2`, `IAB_AUDIENCE_1_1`).
|
|
110
|
+
* Values are arrays of taxonomy IDs as integers.
|
|
111
|
+
*
|
|
112
|
+
* On Android, values are passed as `putIntegerArrayList` in the extras Bundle.
|
|
113
|
+
* On iOS, values are passed as `NSArray<NSNumber>` in GADExtras.
|
|
114
|
+
*
|
|
115
|
+
* @see https://developers.google.com/ad-manager/mobile-ads-sdk/android/targeting#publisher_provided_signals
|
|
116
|
+
* @see https://developers.google.com/ad-manager/mobile-ads-sdk/ios/targeting#publisher_provided_signals
|
|
117
|
+
*
|
|
118
|
+
* #### Example
|
|
119
|
+
*
|
|
120
|
+
* ```js
|
|
121
|
+
* await Interstitial.createForAdRequest('/12345/ad-unit', {
|
|
122
|
+
* publisherProvidedSignals: {
|
|
123
|
+
* IAB_CONTENT_2_2: [533, 483], // Soccer, Sports
|
|
124
|
+
* IAB_AUDIENCE_1_1: [6, 284], // Sports & Fitness, Soccer
|
|
125
|
+
* },
|
|
126
|
+
* });
|
|
127
|
+
* ```
|
|
128
|
+
*/
|
|
129
|
+
publisherProvidedSignals?: {
|
|
130
|
+
[key: string]: number[];
|
|
131
|
+
};
|
|
103
132
|
}
|
|
104
133
|
//# sourceMappingURL=RequestOptions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestOptions.d.ts","sourceRoot":"","sources":["../../../src/types/RequestOptions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEpD,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG;QAAE,WAAW,CAAC,EAAE,oBAAoB,CAAA;KAAE,CAAC;IAEnF;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IAExE;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,6BAA6B,CAAC;IAE9D;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"RequestOptions.d.ts","sourceRoot":"","sources":["../../../src/types/RequestOptions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEpD,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG;QAAE,WAAW,CAAC,EAAE,oBAAoB,CAAA;KAAE,CAAC;IAEnF;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IAExE;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,6BAA6B,CAAC,EAAE,6BAA6B,CAAC;IAE9D;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,wBAAwB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;CACxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateAdRequestOptions.d.ts","sourceRoot":"","sources":["../../src/validateAdRequestOptions.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"validateAdRequestOptions.d.ts","sourceRoot":"","sources":["../../src/validateAdRequestOptions.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,cAAc,kBA4HhE"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "16.
|
|
1
|
+
export declare const version = "16.3.1";
|
|
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": "16.
|
|
3
|
+
"version": "16.3.1",
|
|
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",
|
|
@@ -106,4 +106,32 @@ export interface RequestOptions {
|
|
|
106
106
|
* See [this article](https://support.google.com/admanager/answer/2880055) for more information.
|
|
107
107
|
*/
|
|
108
108
|
publisherProvidedId?: string;
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Publisher Provided Signals (PPS) for Google Ad Manager.
|
|
112
|
+
*
|
|
113
|
+
* PPS allows publishers to send IAB taxonomy signals to help ad buyers
|
|
114
|
+
* evaluate and bid on inventory more effectively.
|
|
115
|
+
*
|
|
116
|
+
* Keys are IAB taxonomy names (e.g. `IAB_CONTENT_2_2`, `IAB_AUDIENCE_1_1`).
|
|
117
|
+
* Values are arrays of taxonomy IDs as integers.
|
|
118
|
+
*
|
|
119
|
+
* On Android, values are passed as `putIntegerArrayList` in the extras Bundle.
|
|
120
|
+
* On iOS, values are passed as `NSArray<NSNumber>` in GADExtras.
|
|
121
|
+
*
|
|
122
|
+
* @see https://developers.google.com/ad-manager/mobile-ads-sdk/android/targeting#publisher_provided_signals
|
|
123
|
+
* @see https://developers.google.com/ad-manager/mobile-ads-sdk/ios/targeting#publisher_provided_signals
|
|
124
|
+
*
|
|
125
|
+
* #### Example
|
|
126
|
+
*
|
|
127
|
+
* ```js
|
|
128
|
+
* await Interstitial.createForAdRequest('/12345/ad-unit', {
|
|
129
|
+
* publisherProvidedSignals: {
|
|
130
|
+
* IAB_CONTENT_2_2: [533, 483], // Soccer, Sports
|
|
131
|
+
* IAB_AUDIENCE_1_1: [6, 284], // Sports & Fitness, Soccer
|
|
132
|
+
* },
|
|
133
|
+
* });
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
publisherProvidedSignals?: { [key: string]: number[] };
|
|
109
137
|
}
|
|
@@ -136,5 +136,19 @@ export function validateAdRequestOptions(options?: RequestOptions) {
|
|
|
136
136
|
out.publisherProvidedId = options.publisherProvidedId;
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
+
if (options.publisherProvidedSignals) {
|
|
140
|
+
if (!isObject(options.publisherProvidedSignals)) {
|
|
141
|
+
throw new Error("'options.publisherProvidedSignals' expected an object of key/value pairs");
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
Object.entries(options.publisherProvidedSignals).forEach(([key, value]) => {
|
|
145
|
+
if (!isArray(value)) {
|
|
146
|
+
throw new Error(`'options.publisherProvidedSignals.${key}' expected an array of numbers`);
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
|
|
150
|
+
out.publisherProvidedSignals = options.publisherProvidedSignals;
|
|
151
|
+
}
|
|
152
|
+
|
|
139
153
|
return out;
|
|
140
154
|
}
|
package/src/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Generated by genversion.
|
|
2
|
-
export const version = '16.
|
|
2
|
+
export const version = '16.3.1';
|