@convivainc/conviva-react-native-appanalytics 0.1.4 → 0.2.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/CHANGELOG.md +9 -0
- package/README.md +60 -7
- package/android/src/main/java/com/conviva/react/apptracker/RNConvivaTrackerModule.java +275 -159
- package/android/src/main/java/com/conviva/react/apptracker/util/TrackerVersion.java +1 -1
- package/conviva-react-native-appanalytics.d.ts +13 -0
- package/conviva-react-native-appanalytics.js +108 -2
- package/ios/RNConvivaAppAnalytics.m +78 -21
- package/ios/Util/RNTrackerVersion.m +1 -1
- package/package.json +1 -1
- package/android/.gradle/7.5/checksums/checksums.lock +0 -0
- package/android/.gradle/7.5/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/7.5/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/7.5/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.5/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.5/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.5/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.5/fileHashes/fileHashes.bin +0 -0
- package/android/.gradle/7.5/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.5/fileHashes/resourceHashesCache.bin +0 -0
- package/android/.gradle/7.5/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
- package/android/.gradle/config.properties +0 -2
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/.idea/compiler.xml +0 -6
- package/android/.idea/gradle.xml +0 -19
- package/android/.idea/migrations.xml +0 -10
- package/android/.idea/misc.xml +0 -10
- package/android/.idea/vcs.xml +0 -6
- package/android/local.properties +0 -8
|
@@ -22,7 +22,6 @@ import com.conviva.apptracker.event.ScreenView;
|
|
|
22
22
|
import com.conviva.apptracker.event.SelfDescribing;
|
|
23
23
|
import com.conviva.apptracker.event.Structured;
|
|
24
24
|
import com.conviva.apptracker.event.Timing;
|
|
25
|
-
import com.conviva.apptracker.globalcontexts.GlobalContext;
|
|
26
25
|
import com.conviva.apptracker.internal.constants.TrackerConstants;
|
|
27
26
|
import com.conviva.apptracker.network.CollectorCookieJar;
|
|
28
27
|
import com.conviva.apptracker.network.HttpMethod;
|
|
@@ -89,8 +88,6 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
89
88
|
if (networkConfig.hasKey("customPostPath") && !networkConfig.isNull("customPostPath")) {
|
|
90
89
|
String customPostPath = networkConfig.getString("customPostPath");
|
|
91
90
|
networkConfiguration.customPostPath = customPostPath;
|
|
92
|
-
} else {
|
|
93
|
-
networkConfiguration.customPostPath = (customerKey + "/" + TrackerConstants.CONVIVA_PROTOCOL_VERSION);
|
|
94
91
|
}
|
|
95
92
|
if (networkConfig.hasKey("requestHeaders") && !networkConfig.isNull("requestHeaders")) {
|
|
96
93
|
ReadableMap requestHeaders = networkConfig.getMap("requestHeaders");
|
|
@@ -180,8 +177,11 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
180
177
|
try {
|
|
181
178
|
String namespace = details.getString("tracker");
|
|
182
179
|
TrackerController trackerController = getTracker(namespace);
|
|
183
|
-
|
|
184
|
-
|
|
180
|
+
if (trackerController != null) {
|
|
181
|
+
promise.resolve(ConvivaAppAnalytics.removeTracker(trackerController));
|
|
182
|
+
} else {
|
|
183
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
184
|
+
}
|
|
185
185
|
|
|
186
186
|
} catch (Throwable t) {
|
|
187
187
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -200,23 +200,45 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
+
@ReactMethod
|
|
204
|
+
public void setClientId(ReadableMap argmap, Promise promise) {
|
|
205
|
+
try {
|
|
206
|
+
promise.resolve(ConvivaAppAnalytics.setClientId(this.reactContext, argmap.getString("clientId")));
|
|
207
|
+
} catch (Throwable t) {
|
|
208
|
+
promise.reject("ERROR", t.getMessage());
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
@ReactMethod
|
|
213
|
+
public void getClientId(Promise promise) {
|
|
214
|
+
try {
|
|
215
|
+
promise.resolve(ConvivaAppAnalytics.getClientId(this.reactContext));
|
|
216
|
+
} catch (Throwable t) {
|
|
217
|
+
promise.reject("ERROR", t.getMessage());
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
|
|
203
221
|
@ReactMethod
|
|
204
222
|
public void trackSelfDescribingEvent(ReadableMap details, Promise promise) {
|
|
205
223
|
try {
|
|
206
224
|
String namespace = details.getString("tracker");
|
|
207
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
208
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
209
|
-
|
|
210
225
|
TrackerController trackerController = getTracker(namespace);
|
|
226
|
+
if (trackerController != null) {
|
|
227
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
228
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
211
229
|
|
|
212
|
-
SelfDescribingJson sdj = EventUtil.createSelfDescribingJson(argmap);
|
|
213
|
-
SelfDescribing event = new SelfDescribing(sdj);
|
|
214
230
|
|
|
215
|
-
|
|
216
|
-
|
|
231
|
+
SelfDescribingJson sdj = EventUtil.createSelfDescribingJson(argmap);
|
|
232
|
+
SelfDescribing event = new SelfDescribing(sdj);
|
|
217
233
|
|
|
218
|
-
|
|
219
|
-
|
|
234
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
235
|
+
event.customContexts.addAll(evCtxts);
|
|
236
|
+
|
|
237
|
+
trackerController.track(event);
|
|
238
|
+
promise.resolve(true);
|
|
239
|
+
} else {
|
|
240
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
241
|
+
}
|
|
220
242
|
|
|
221
243
|
} catch (Throwable t) {
|
|
222
244
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -227,18 +249,23 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
227
249
|
public void trackStructuredEvent(ReadableMap details, Promise promise) {
|
|
228
250
|
try {
|
|
229
251
|
String namespace = details.getString("tracker");
|
|
230
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
231
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
232
|
-
|
|
233
252
|
TrackerController trackerController = getTracker(namespace);
|
|
253
|
+
if (trackerController != null) {
|
|
234
254
|
|
|
235
|
-
|
|
255
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
256
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
236
257
|
|
|
237
|
-
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
238
|
-
event.customContexts.addAll(evCtxts);
|
|
239
258
|
|
|
240
|
-
|
|
241
|
-
|
|
259
|
+
Structured event = EventUtil.createStructuredEvent(argmap);
|
|
260
|
+
|
|
261
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
262
|
+
event.customContexts.addAll(evCtxts);
|
|
263
|
+
|
|
264
|
+
trackerController.track(event);
|
|
265
|
+
promise.resolve(true);
|
|
266
|
+
} else {
|
|
267
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
268
|
+
}
|
|
242
269
|
|
|
243
270
|
} catch (Throwable t) {
|
|
244
271
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -249,18 +276,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
249
276
|
public void trackScreenViewEvent(ReadableMap details, Promise promise) {
|
|
250
277
|
try {
|
|
251
278
|
String namespace = details.getString("tracker");
|
|
252
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
253
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
254
|
-
|
|
255
279
|
TrackerController trackerController = getTracker(namespace);
|
|
280
|
+
if (trackerController != null) {
|
|
281
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
282
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
256
283
|
|
|
257
|
-
ScreenView event = EventUtil.createScreenViewEvent(argmap);
|
|
258
284
|
|
|
259
|
-
|
|
260
|
-
event.customContexts.addAll(evCtxts);
|
|
285
|
+
ScreenView event = EventUtil.createScreenViewEvent(argmap);
|
|
261
286
|
|
|
262
|
-
|
|
263
|
-
|
|
287
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
288
|
+
event.customContexts.addAll(evCtxts);
|
|
289
|
+
|
|
290
|
+
trackerController.track(event);
|
|
291
|
+
promise.resolve(true);
|
|
292
|
+
} else {
|
|
293
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
294
|
+
}
|
|
264
295
|
|
|
265
296
|
} catch (Throwable t) {
|
|
266
297
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -271,18 +302,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
271
302
|
public void trackPageView(ReadableMap details, Promise promise) {
|
|
272
303
|
try {
|
|
273
304
|
String namespace = details.getString("tracker");
|
|
274
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
275
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
276
|
-
|
|
277
305
|
TrackerController trackerController = getTracker(namespace);
|
|
306
|
+
if (trackerController != null) {
|
|
307
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
308
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
278
309
|
|
|
279
|
-
PageView event = EventUtil.createPageViewEvent(argmap);
|
|
280
310
|
|
|
281
|
-
|
|
282
|
-
event.customContexts.addAll(evCtxts);
|
|
311
|
+
PageView event = EventUtil.createPageViewEvent(argmap);
|
|
283
312
|
|
|
284
|
-
|
|
285
|
-
|
|
313
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
314
|
+
event.customContexts.addAll(evCtxts);
|
|
315
|
+
|
|
316
|
+
trackerController.track(event);
|
|
317
|
+
promise.resolve(true);
|
|
318
|
+
} else {
|
|
319
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
320
|
+
}
|
|
286
321
|
|
|
287
322
|
} catch (Throwable t) {
|
|
288
323
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -293,18 +328,21 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
293
328
|
public void trackTimingEvent(ReadableMap details, Promise promise) {
|
|
294
329
|
try {
|
|
295
330
|
String namespace = details.getString("tracker");
|
|
296
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
297
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
298
|
-
|
|
299
331
|
TrackerController trackerController = getTracker(namespace);
|
|
332
|
+
if (trackerController != null) {
|
|
333
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
334
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
300
335
|
|
|
301
|
-
|
|
336
|
+
Timing event = EventUtil.createTimingEvent(argmap);
|
|
302
337
|
|
|
303
|
-
|
|
304
|
-
|
|
338
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
339
|
+
event.customContexts.addAll(evCtxts);
|
|
305
340
|
|
|
306
|
-
|
|
307
|
-
|
|
341
|
+
trackerController.track(event);
|
|
342
|
+
promise.resolve(true);
|
|
343
|
+
} else {
|
|
344
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
345
|
+
}
|
|
308
346
|
|
|
309
347
|
} catch (Throwable t) {
|
|
310
348
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -315,18 +353,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
315
353
|
public void trackConsentGrantedEvent(ReadableMap details, Promise promise) {
|
|
316
354
|
try {
|
|
317
355
|
String namespace = details.getString("tracker");
|
|
318
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
319
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
320
|
-
|
|
321
356
|
TrackerController trackerController = getTracker(namespace);
|
|
357
|
+
if (trackerController != null) {
|
|
358
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
359
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
322
360
|
|
|
323
|
-
ConsentGranted event = EventUtil.createConsentGrantedEvent(argmap);
|
|
324
361
|
|
|
325
|
-
|
|
326
|
-
event.customContexts.addAll(evCtxts);
|
|
362
|
+
ConsentGranted event = EventUtil.createConsentGrantedEvent(argmap);
|
|
327
363
|
|
|
328
|
-
|
|
329
|
-
|
|
364
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
365
|
+
event.customContexts.addAll(evCtxts);
|
|
366
|
+
|
|
367
|
+
trackerController.track(event);
|
|
368
|
+
promise.resolve(true);
|
|
369
|
+
} else {
|
|
370
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
371
|
+
}
|
|
330
372
|
|
|
331
373
|
} catch (Throwable t) {
|
|
332
374
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -337,18 +379,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
337
379
|
public void trackConsentWithdrawnEvent(ReadableMap details, Promise promise) {
|
|
338
380
|
try {
|
|
339
381
|
String namespace = details.getString("tracker");
|
|
340
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
341
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
342
|
-
|
|
343
382
|
TrackerController trackerController = getTracker(namespace);
|
|
383
|
+
if (trackerController != null) {
|
|
384
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
385
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
344
386
|
|
|
345
|
-
ConsentWithdrawn event = EventUtil.createConsentWithdrawnEvent(argmap);
|
|
346
387
|
|
|
347
|
-
|
|
348
|
-
event.customContexts.addAll(evCtxts);
|
|
388
|
+
ConsentWithdrawn event = EventUtil.createConsentWithdrawnEvent(argmap);
|
|
349
389
|
|
|
350
|
-
|
|
351
|
-
|
|
390
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
391
|
+
event.customContexts.addAll(evCtxts);
|
|
392
|
+
|
|
393
|
+
trackerController.track(event);
|
|
394
|
+
promise.resolve(true);
|
|
395
|
+
} else {
|
|
396
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
397
|
+
}
|
|
352
398
|
|
|
353
399
|
} catch (Throwable t) {
|
|
354
400
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -359,18 +405,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
359
405
|
public void trackEcommerceTransactionEvent(ReadableMap details, Promise promise) {
|
|
360
406
|
try {
|
|
361
407
|
String namespace = details.getString("tracker");
|
|
362
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
363
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
364
|
-
|
|
365
408
|
TrackerController trackerController = getTracker(namespace);
|
|
409
|
+
if (trackerController != null) {
|
|
410
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
411
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
366
412
|
|
|
367
|
-
EcommerceTransaction event = EventUtil.createEcommerceTransactionEvent(argmap);
|
|
368
413
|
|
|
369
|
-
|
|
370
|
-
event.customContexts.addAll(evCtxts);
|
|
414
|
+
EcommerceTransaction event = EventUtil.createEcommerceTransactionEvent(argmap);
|
|
371
415
|
|
|
372
|
-
|
|
373
|
-
|
|
416
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
417
|
+
event.customContexts.addAll(evCtxts);
|
|
418
|
+
|
|
419
|
+
trackerController.track(event);
|
|
420
|
+
promise.resolve(true);
|
|
421
|
+
} else {
|
|
422
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
423
|
+
}
|
|
374
424
|
|
|
375
425
|
} catch (Throwable t) {
|
|
376
426
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -381,18 +431,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
381
431
|
public void trackDeepLinkReceivedEvent(ReadableMap details, Promise promise) {
|
|
382
432
|
try {
|
|
383
433
|
String namespace = details.getString("tracker");
|
|
384
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
385
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
386
|
-
|
|
387
434
|
TrackerController trackerController = getTracker(namespace);
|
|
435
|
+
if (trackerController != null) {
|
|
436
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
437
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
388
438
|
|
|
389
|
-
DeepLinkReceived event = EventUtil.createDeepLinkReceivedEvent(argmap);
|
|
390
439
|
|
|
391
|
-
|
|
392
|
-
event.customContexts.addAll(evCtxts);
|
|
440
|
+
DeepLinkReceived event = EventUtil.createDeepLinkReceivedEvent(argmap);
|
|
393
441
|
|
|
394
|
-
|
|
395
|
-
|
|
442
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
443
|
+
event.customContexts.addAll(evCtxts);
|
|
444
|
+
|
|
445
|
+
trackerController.track(event);
|
|
446
|
+
promise.resolve(true);
|
|
447
|
+
} else {
|
|
448
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
449
|
+
}
|
|
396
450
|
|
|
397
451
|
} catch (Throwable t) {
|
|
398
452
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -403,18 +457,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
403
457
|
public void trackMessageNotificationEvent(ReadableMap details, Promise promise) {
|
|
404
458
|
try {
|
|
405
459
|
String namespace = details.getString("tracker");
|
|
406
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
407
|
-
ReadableArray contexts = details.getArray("contexts");
|
|
408
|
-
|
|
409
460
|
TrackerController trackerController = getTracker(namespace);
|
|
461
|
+
if (trackerController != null) {
|
|
462
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
463
|
+
ReadableArray contexts = details.getArray("contexts");
|
|
410
464
|
|
|
411
|
-
MessageNotification event = EventUtil.createMessageNotificationEvent(argmap);
|
|
412
465
|
|
|
413
|
-
|
|
414
|
-
event.customContexts.addAll(evCtxts);
|
|
466
|
+
MessageNotification event = EventUtil.createMessageNotificationEvent(argmap);
|
|
415
467
|
|
|
416
|
-
|
|
417
|
-
|
|
468
|
+
List<SelfDescribingJson> evCtxts = EventUtil.createContexts(contexts);
|
|
469
|
+
event.customContexts.addAll(evCtxts);
|
|
470
|
+
|
|
471
|
+
trackerController.track(event);
|
|
472
|
+
promise.resolve(true);
|
|
473
|
+
} else {
|
|
474
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
475
|
+
}
|
|
418
476
|
|
|
419
477
|
} catch (Throwable t) {
|
|
420
478
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -425,15 +483,18 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
425
483
|
public void trackCustomEvent(ReadableMap details, Promise promise) {
|
|
426
484
|
try {
|
|
427
485
|
String namespace = details.getString("tracker");
|
|
428
|
-
String eventName = details.getString("eventName");
|
|
429
|
-
ReadableMap argmap = details.getMap("eventData");
|
|
430
|
-
|
|
431
486
|
TrackerController trackerController = getTracker(namespace);
|
|
487
|
+
if (trackerController != null) {
|
|
488
|
+
String eventName = details.getString("eventName");
|
|
489
|
+
ReadableMap argmap = details.getMap("eventData");
|
|
432
490
|
|
|
433
|
-
|
|
491
|
+
HashMap<String, Object> eventData = argmap.toHashMap();
|
|
434
492
|
|
|
435
|
-
|
|
436
|
-
|
|
493
|
+
trackerController.trackCustomEvent(eventName, JSONValue.toJSONString(eventData));
|
|
494
|
+
promise.resolve(true);
|
|
495
|
+
} else {
|
|
496
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
497
|
+
}
|
|
437
498
|
|
|
438
499
|
} catch (Throwable t) {
|
|
439
500
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -444,14 +505,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
444
505
|
public void setCustomTags(ReadableMap details, Promise promise) {
|
|
445
506
|
try {
|
|
446
507
|
String namespace = details.getString("tracker");
|
|
447
|
-
ReadableMap argmap = details.getMap("tags");
|
|
448
|
-
|
|
449
508
|
TrackerController trackerController = getTracker(namespace);
|
|
509
|
+
if (trackerController != null) {
|
|
510
|
+
ReadableMap argmap = details.getMap("tags");
|
|
450
511
|
|
|
451
|
-
|
|
512
|
+
HashMap<String, Object> tags = argmap.toHashMap();
|
|
452
513
|
|
|
453
|
-
|
|
454
|
-
|
|
514
|
+
trackerController.setCustomTags(tags);
|
|
515
|
+
promise.resolve(true);
|
|
516
|
+
} else {
|
|
517
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
518
|
+
}
|
|
455
519
|
|
|
456
520
|
} catch (Throwable t) {
|
|
457
521
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -462,13 +526,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
462
526
|
public void clearCustomTags(ReadableMap details, Promise promise) {
|
|
463
527
|
try {
|
|
464
528
|
String namespace = details.getString("tracker");
|
|
465
|
-
ReadableArray argArray = details.getArray("tagKeys");
|
|
466
|
-
|
|
467
529
|
TrackerController trackerController = getTracker(namespace);
|
|
530
|
+
if (trackerController != null) {
|
|
531
|
+
ReadableArray argArray = details.getArray("tagKeys");
|
|
468
532
|
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
533
|
+
|
|
534
|
+
List<String> tagKeys = EventUtil.createStrings(argArray);
|
|
535
|
+
trackerController.clearCustomTags(new HashSet<>(tagKeys));
|
|
536
|
+
promise.resolve(true);
|
|
537
|
+
} else {
|
|
538
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
539
|
+
}
|
|
472
540
|
|
|
473
541
|
} catch (Throwable t) {
|
|
474
542
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -480,9 +548,13 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
480
548
|
try {
|
|
481
549
|
String namespace = details.getString("tracker");
|
|
482
550
|
TrackerController trackerController = getTracker(namespace);
|
|
551
|
+
if (trackerController != null) {
|
|
483
552
|
|
|
484
|
-
|
|
485
|
-
|
|
553
|
+
trackerController.clearAllCustomTags();
|
|
554
|
+
promise.resolve(true);
|
|
555
|
+
} else {
|
|
556
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
557
|
+
}
|
|
486
558
|
|
|
487
559
|
} catch (Throwable t) {
|
|
488
560
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -493,13 +565,18 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
493
565
|
public void trackClickEvent(ReadableMap details, Promise promise) {
|
|
494
566
|
try {
|
|
495
567
|
String namespace = details.getString("tracker");
|
|
496
|
-
ReadableMap eventMap = details.getMap("eventData");
|
|
497
568
|
TrackerController trackerController = getTracker(namespace);
|
|
569
|
+
if (trackerController != null) {
|
|
570
|
+
ReadableMap eventMap = details.getMap("eventData");
|
|
498
571
|
|
|
499
|
-
ButtonClick event = EventUtil.createButtonClickEvent(eventMap);
|
|
500
|
-
trackerController.track(event);
|
|
501
572
|
|
|
502
|
-
|
|
573
|
+
ButtonClick event = EventUtil.createButtonClickEvent(eventMap);
|
|
574
|
+
trackerController.track(event);
|
|
575
|
+
|
|
576
|
+
promise.resolve(true);
|
|
577
|
+
} else {
|
|
578
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
579
|
+
}
|
|
503
580
|
|
|
504
581
|
} catch (Throwable t) {
|
|
505
582
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -555,13 +632,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
555
632
|
try {
|
|
556
633
|
String namespace = details.getString("tracker");
|
|
557
634
|
TrackerController trackerController = getTracker(namespace);
|
|
635
|
+
if (trackerController != null) {
|
|
558
636
|
|
|
559
|
-
|
|
560
|
-
|
|
637
|
+
if (details.isNull("userId")) {
|
|
638
|
+
trackerController.getSubject().setUserId(null);
|
|
639
|
+
} else {
|
|
640
|
+
trackerController.getSubject().setUserId(details.getString("userId"));
|
|
641
|
+
}
|
|
642
|
+
promise.resolve(true);
|
|
561
643
|
} else {
|
|
562
|
-
|
|
644
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
563
645
|
}
|
|
564
|
-
promise.resolve(true);
|
|
565
646
|
|
|
566
647
|
} catch (Throwable t) {
|
|
567
648
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -573,13 +654,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
573
654
|
try {
|
|
574
655
|
String namespace = details.getString("tracker");
|
|
575
656
|
TrackerController trackerController = getTracker(namespace);
|
|
657
|
+
if (trackerController != null) {
|
|
576
658
|
|
|
577
|
-
|
|
578
|
-
|
|
659
|
+
if (details.isNull("networkUserId")) {
|
|
660
|
+
trackerController.getSubject().setNetworkUserId(null);
|
|
661
|
+
} else {
|
|
662
|
+
trackerController.getSubject().setNetworkUserId(details.getString("networkUserId"));
|
|
663
|
+
}
|
|
664
|
+
promise.resolve(true);
|
|
579
665
|
} else {
|
|
580
|
-
|
|
666
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
581
667
|
}
|
|
582
|
-
promise.resolve(true);
|
|
583
668
|
|
|
584
669
|
} catch (Throwable t) {
|
|
585
670
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -591,13 +676,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
591
676
|
try {
|
|
592
677
|
String namespace = details.getString("tracker");
|
|
593
678
|
TrackerController trackerController = getTracker(namespace);
|
|
679
|
+
if (trackerController != null) {
|
|
594
680
|
|
|
595
|
-
|
|
596
|
-
|
|
681
|
+
if (details.isNull("domainUserId")) {
|
|
682
|
+
trackerController.getSubject().setDomainUserId(null);
|
|
683
|
+
} else {
|
|
684
|
+
trackerController.getSubject().setDomainUserId(details.getString("domainUserId"));
|
|
685
|
+
}
|
|
686
|
+
promise.resolve(true);
|
|
597
687
|
} else {
|
|
598
|
-
|
|
688
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
599
689
|
}
|
|
600
|
-
promise.resolve(true);
|
|
601
690
|
|
|
602
691
|
} catch (Throwable t) {
|
|
603
692
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -609,13 +698,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
609
698
|
try {
|
|
610
699
|
String namespace = details.getString("tracker");
|
|
611
700
|
TrackerController trackerController = getTracker(namespace);
|
|
701
|
+
if (trackerController != null) {
|
|
612
702
|
|
|
613
|
-
|
|
614
|
-
|
|
703
|
+
if (details.isNull("ipAddress")) {
|
|
704
|
+
trackerController.getSubject().setIpAddress(null);
|
|
705
|
+
} else {
|
|
706
|
+
trackerController.getSubject().setIpAddress(details.getString("ipAddress"));
|
|
707
|
+
}
|
|
708
|
+
promise.resolve(true);
|
|
615
709
|
} else {
|
|
616
|
-
|
|
710
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
617
711
|
}
|
|
618
|
-
promise.resolve(true);
|
|
619
712
|
|
|
620
713
|
} catch (Throwable t) {
|
|
621
714
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -627,13 +720,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
627
720
|
try {
|
|
628
721
|
String namespace = details.getString("tracker");
|
|
629
722
|
TrackerController trackerController = getTracker(namespace);
|
|
723
|
+
if (trackerController != null) {
|
|
630
724
|
|
|
631
|
-
|
|
632
|
-
|
|
725
|
+
if (details.isNull("useragent")) {
|
|
726
|
+
trackerController.getSubject().setUseragent(null);
|
|
727
|
+
} else {
|
|
728
|
+
trackerController.getSubject().setUseragent(details.getString("useragent"));
|
|
729
|
+
}
|
|
730
|
+
promise.resolve(true);
|
|
633
731
|
} else {
|
|
634
|
-
|
|
732
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
635
733
|
}
|
|
636
|
-
promise.resolve(true);
|
|
637
734
|
|
|
638
735
|
} catch (Throwable t) {
|
|
639
736
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -645,13 +742,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
645
742
|
try {
|
|
646
743
|
String namespace = details.getString("tracker");
|
|
647
744
|
TrackerController trackerController = getTracker(namespace);
|
|
745
|
+
if (trackerController != null) {
|
|
648
746
|
|
|
649
|
-
|
|
650
|
-
|
|
747
|
+
if (details.isNull("timezone")) {
|
|
748
|
+
trackerController.getSubject().setTimezone(null);
|
|
749
|
+
} else {
|
|
750
|
+
trackerController.getSubject().setTimezone(details.getString("timezone"));
|
|
751
|
+
}
|
|
752
|
+
promise.resolve(true);
|
|
651
753
|
} else {
|
|
652
|
-
|
|
754
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
653
755
|
}
|
|
654
|
-
promise.resolve(true);
|
|
655
756
|
|
|
656
757
|
} catch (Throwable t) {
|
|
657
758
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -663,13 +764,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
663
764
|
try {
|
|
664
765
|
String namespace = details.getString("tracker");
|
|
665
766
|
TrackerController trackerController = getTracker(namespace);
|
|
767
|
+
if (trackerController != null) {
|
|
666
768
|
|
|
667
|
-
|
|
668
|
-
|
|
769
|
+
if (details.isNull("language")) {
|
|
770
|
+
trackerController.getSubject().setLanguage(null);
|
|
771
|
+
} else {
|
|
772
|
+
trackerController.getSubject().setLanguage(details.getString("language"));
|
|
773
|
+
}
|
|
774
|
+
promise.resolve(true);
|
|
669
775
|
} else {
|
|
670
|
-
|
|
776
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
671
777
|
}
|
|
672
|
-
promise.resolve(true);
|
|
673
778
|
|
|
674
779
|
} catch (Throwable t) {
|
|
675
780
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -681,18 +786,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
681
786
|
try {
|
|
682
787
|
String namespace = details.getString("tracker");
|
|
683
788
|
TrackerController trackerController = getTracker(namespace);
|
|
789
|
+
if (trackerController != null) {
|
|
684
790
|
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
791
|
+
if (details.isNull("screenResolution")) {
|
|
792
|
+
trackerController.getSubject().setScreenResolution(null);
|
|
793
|
+
} else {
|
|
794
|
+
ReadableArray screenRes = details.getArray("screenResolution");
|
|
795
|
+
int width = screenRes.getInt(0);
|
|
796
|
+
int height = screenRes.getInt(1);
|
|
797
|
+
Size screenR = new Size(width, height);
|
|
692
798
|
|
|
693
|
-
|
|
799
|
+
trackerController.getSubject().setScreenResolution(screenR);
|
|
800
|
+
}
|
|
801
|
+
promise.resolve(true);
|
|
802
|
+
} else {
|
|
803
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
694
804
|
}
|
|
695
|
-
promise.resolve(true);
|
|
696
805
|
|
|
697
806
|
} catch (Throwable t) {
|
|
698
807
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -704,18 +813,22 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
704
813
|
try {
|
|
705
814
|
String namespace = details.getString("tracker");
|
|
706
815
|
TrackerController trackerController = getTracker(namespace);
|
|
816
|
+
if (trackerController != null) {
|
|
707
817
|
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
818
|
+
if (details.isNull("screenViewport")) {
|
|
819
|
+
trackerController.getSubject().setScreenViewPort(null);
|
|
820
|
+
} else {
|
|
821
|
+
ReadableArray screenView = details.getArray("screenViewport");
|
|
822
|
+
int width = screenView.getInt(0);
|
|
823
|
+
int height = screenView.getInt(1);
|
|
824
|
+
Size screenVP = new Size(width, height);
|
|
715
825
|
|
|
716
|
-
|
|
826
|
+
trackerController.getSubject().setScreenViewPort(screenVP);
|
|
827
|
+
}
|
|
828
|
+
promise.resolve(true);
|
|
829
|
+
} else {
|
|
830
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
717
831
|
}
|
|
718
|
-
promise.resolve(true);
|
|
719
832
|
|
|
720
833
|
} catch (Throwable t) {
|
|
721
834
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -727,13 +840,17 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
727
840
|
try {
|
|
728
841
|
String namespace = details.getString("tracker");
|
|
729
842
|
TrackerController trackerController = getTracker(namespace);
|
|
843
|
+
if (trackerController != null) {
|
|
730
844
|
|
|
731
|
-
|
|
732
|
-
|
|
845
|
+
if (details.isNull("colorDepth")) {
|
|
846
|
+
trackerController.getSubject().setColorDepth(null);
|
|
847
|
+
} else {
|
|
848
|
+
trackerController.getSubject().setColorDepth(details.getInt("colorDepth"));
|
|
849
|
+
}
|
|
850
|
+
promise.resolve(true);
|
|
733
851
|
} else {
|
|
734
|
-
|
|
852
|
+
promise.reject("ERROR", "TrackerController is null");
|
|
735
853
|
}
|
|
736
|
-
promise.resolve(true);
|
|
737
854
|
|
|
738
855
|
} catch (Throwable t) {
|
|
739
856
|
promise.reject("ERROR", t.getMessage());
|
|
@@ -833,5 +950,4 @@ public class RNConvivaTrackerModule extends ReactContextBaseJavaModule {
|
|
|
833
950
|
private TrackerController getTracker(String namespace) {
|
|
834
951
|
return namespace == null ? ConvivaAppAnalytics.getDefaultTracker() : ConvivaAppAnalytics.getTracker(namespace);
|
|
835
952
|
}
|
|
836
|
-
|
|
837
953
|
}
|