apps-sdk 1.0.48 → 1.0.49

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/config.js CHANGED
@@ -31,9 +31,9 @@ export const EVENT_TYPES = {
31
31
  }
32
32
 
33
33
  export const ADJUST = {
34
- ADJUST_TOKEN : 'y4o1gcezs6ps',
35
- ENVIRONMENT : 'SANDBOX', // or 'PRODUCTION'
36
- LOG_LEVEL: 'VERBOSE' // or 'DEBUG', 'INFO', 'WARN', 'ERROR', 'ASSERT', 'SUPPRESS'
34
+ ADJUST_TOKEN : 'y4o1gcezs6ps',
35
+ ENVIRONMENT : 'SANDBOX', // or 'PRODUCTION'
36
+ LOG_LEVEL : 'VERBOSE'
37
37
  }
38
38
 
39
39
  export const DEBUG_MODE = true;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apps-sdk",
3
- "version": "1.0.48",
3
+ "version": "1.0.49",
4
4
  "description": "Apps SDK",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -19,6 +19,7 @@
19
19
  "expo-notifications": "^0.23.0",
20
20
  "expo-sharing": "^11.10.0",
21
21
  "expo-store-review": "~6.8.3",
22
+ "expo-tracking-transparency": "~3.3.0",
22
23
  "react-native": "^0.73.2",
23
24
  "react-native-adjust": "^4.37.1",
24
25
  "react-native-btr": "^2.2.1",
@@ -5,10 +5,13 @@ import {Platform} from "react-native";
5
5
 
6
6
  class AdJust {
7
7
  initialize() {
8
- const adjustConfig = new AdjustConfig(config.ADJUST.ADJUST_TOKEN, config.ADJUST.ENVIRONMENT === 'SANDBOX' ? AdjustConfig.EnvironmentSandbox : AdjustConfig.EnvironmentProduction);
9
- adjustConfig.setLogLevel(config.ADJUST.LOG_LEVEL === 'VERBOSE' ? AdjustConfig.LogLevelVerbose : AdjustConfig.LogLevelSuppress);
8
+ const adjustEnvironment = config.ADJUST.ENVIRONMENT === 'SANDBOX' ? AdjustConfig.EnvironmentSandbox : AdjustConfig.EnvironmentProduction;
9
+ const adjustLogLevel = config.ADJUST.LOG_LEVEL === 'VERBOSE' ? AdjustConfig.LogLevelVerbose : AdjustConfig.LogLevelSuppress;
10
+ console.log("Initializing AdJust. Environment: " + adjustEnvironment + ", Log level: " + adjustLogLevel);
11
+ const adjustConfig = new AdjustConfig(config.ADJUST.ADJUST_TOKEN, adjustEnvironment);
12
+ adjustConfig.setLogLevel(adjustLogLevel);
10
13
  adjustConfig.setAttributionCallbackListener(function(attribution) {
11
- console.log("Attribution callback received: ", JSON.stringify(attribution));
14
+ console.log("AdJust Attribution callback received: ", JSON.stringify(attribution));
12
15
  });
13
16
  Adjust.create(adjustConfig);
14
17
  }
@@ -170,6 +170,7 @@ class Networking {
170
170
  sendEvent = async (eventType, eventKeyword, eventData={}) => {
171
171
  config.DEBUG_MODE && console.debug("sendEvent", eventType, eventKeyword, eventData);
172
172
  try {
173
+ AdJust.trackEventIfExist(eventKeyword);
173
174
  let eventResponse = await this.request(config.ENDPOINTS.EVENTS_PUSH, {
174
175
  event_name: eventType,
175
176
  event_type: eventType,
@@ -181,7 +182,6 @@ class Networking {
181
182
  config.DEBUG_MODE && console.debug("eventResponse", eventResponse);
182
183
  return eventResponse;
183
184
  }
184
- AdJust.trackEventIfExist(eventKeyword);
185
185
  return null;
186
186
  } catch (error) {
187
187
  console.error(error);
@@ -0,0 +1,23 @@
1
+ import { requestTrackingPermissionsAsync } from 'expo-tracking-transparency';
2
+ import Storage from './Storage';
3
+ import Networking from './Networking';
4
+
5
+ class TrackingTransparency {
6
+ async requestTrackingTransparencyPermission() {
7
+ let trackingPermission = await Storage.getData('TRACKING_PERMISSION');
8
+ if (!trackingPermission || trackingPermission !== 'granted') {
9
+ const { status } = await requestTrackingPermissionsAsync();
10
+ if (status === 'granted') {
11
+ Storage.storeData('TRACKING_PERMISSION', 'granted');
12
+ Networking.sendEvent('action', 'tracking_consent');
13
+ console.log('Tracking Transparency permission granted');
14
+ } else {
15
+ Storage.storeData('TRACKING_PERMISSION', 'denied');
16
+ Networking.sendEvent('action', 'tracking_denied');
17
+ console.log('Tracking Transparency permission denied');
18
+ }
19
+ }
20
+ }
21
+ }
22
+
23
+ export default new TrackingTransparency();
@@ -1,8 +1,9 @@
1
- export { default as NotificationsPush } from './Notifications';
2
- export { default as Networking } from './Networking';
3
- export { default as Storage } from './Storage';
4
- export { default as Session } from './Session';
5
- export { default as Utils } from './Utils';
6
- export { default as Rating } from './Rating';
7
- export { default as AdJust } from './AdJust';
8
- export { default as PayWallLogic } from './PayWallLogic';
1
+ export { default as NotificationsPush } from './Notifications';
2
+ export { default as Networking } from './Networking';
3
+ export { default as Storage } from './Storage';
4
+ export { default as Session } from './Session';
5
+ export { default as Utils } from './Utils';
6
+ export { default as Rating } from './Rating';
7
+ export { default as AdJust } from './AdJust';
8
+ export { default as TrackingTransparency } from './TrackingTransparency';
9
+ export { default as PayWallLogic } from './PayWallLogic';
package/types/index.d.ts CHANGED
@@ -106,23 +106,29 @@ declare module 'apps-sdk' {
106
106
  }
107
107
 
108
108
  export class AdJust {
109
+ initialize(): Promise<void>;
109
110
  trackEvent(eventKeyword: string, eventValue: number): void;
110
111
  }
111
112
 
113
+ export class TrackingTransparency {
114
+ requestTrackingTransparencyPermission(): Promise<string>;
115
+ }
116
+
112
117
  export class AppsSDK {
113
118
  initializePushNotifications(): Promise<string>;
114
119
  }
115
120
 
116
121
  export interface AppsSDK {
117
122
  initializePushNotifications(): Promise<string>;
118
- networking: Networking;
119
- storage: Storage;
120
- session: Session;
121
- utils: Utils;
122
- paywall: PayWall;
123
- rating: Rating;
124
- adjust: AdJust;
125
- paywallLogic: PayWallLogic;
123
+ networking : Networking;
124
+ storage : Storage;
125
+ session : Session;
126
+ utils : Utils;
127
+ paywall : PayWall;
128
+ rating : Rating;
129
+ adjust : AdJust;
130
+ tracking : TrackingTransparency;
131
+ paywallLogic : PayWallLogic;
126
132
  }
127
133
 
128
134
  const Core: AppsSDK;