@metrixorg/react-native-plugin 1.2.0-beta09 → 1.2.0-beta13

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.
@@ -8,8 +8,8 @@ android {
8
8
  defaultConfig {
9
9
  minSdkVersion 16
10
10
  targetSdkVersion 28
11
- versionCode 100200057
12
- versionName "1.2.0-beta07"
11
+ versionCode 100200063
12
+ versionName "1.2.0-beta13"
13
13
  }
14
14
 
15
15
  buildTypes {
@@ -29,6 +29,6 @@ rootProject.allprojects {
29
29
 
30
30
  dependencies {
31
31
  implementation 'com.facebook.react:react-native:+'
32
- implementation 'ir.metrix:metrix-reactnative:1.2.0-beta5'
32
+ implementation 'ir.metrix:metrix-reactnative:1.2.0-beta7'
33
33
 
34
34
  }
@@ -25,6 +25,8 @@ import ir.metrix.messaging.RevenueCurrency;
25
25
  import ir.metrix.OnAttributionChangeListener;
26
26
  import ir.metrix.OnDeeplinkResponseListener;
27
27
  import ir.metrix.UserIdListener;
28
+ import ir.metrix.session.SessionIdListener;
29
+ import ir.metrix.session.SessionNumberListener;
28
30
 
29
31
  public class MetrixModule extends ReactContextBaseJavaModule {
30
32
 
@@ -97,17 +99,27 @@ public class MetrixModule extends ReactContextBaseJavaModule {
97
99
  }
98
100
 
99
101
  @ReactMethod
100
- public void getSessionNum(Callback callback) {
101
- if (callback != null) {
102
- callback.invoke(ir.metrix.Metrix.getSessionNum());
103
- }
102
+ public void setSessionNumberListener() {
103
+ ir.metrix.Metrix.setSessionNumberListener(
104
+ new SessionNumberListener() {
105
+ @Override
106
+ public void onSessionNumberChanged(int sessionNumber) {
107
+ sendStringEvent("onSessionNumberChangedListener", String.valueOf(sessionNumber));
108
+ }
109
+ }
110
+ );
104
111
  }
105
112
 
106
113
  @ReactMethod
107
- public void getSessionId(Callback callback) {
108
- if (callback != null) {
109
- callback.invoke(ir.metrix.Metrix.getSessionId());
110
- }
114
+ public void setSessionIdListener() {
115
+ ir.metrix.Metrix.setSessionIdListener(
116
+ new SessionIdListener() {
117
+ @Override
118
+ public void onSessionIdChanged(String sessionId) {
119
+ sendStringEvent("onSessionIdChangedListener", sessionId);
120
+ }
121
+ }
122
+ );
111
123
  }
112
124
 
113
125
  @ReactMethod
package/index.js CHANGED
@@ -22,12 +22,14 @@ Metrix.setPushToken = function(token) {
22
22
  module_metrix.setPushToken(token);
23
23
  };
24
24
 
25
- Metrix.getSessionNum = function(callback) {
26
- module_metrix.getSessionNum(callback);
25
+ Metrix.setSessionNumberListener = function(callback) {
26
+ eventEmitter.addListener('onSessionNumberChangedListener', callback);
27
+ module_metrix.setSessionNumberListener();
27
28
  };
28
29
 
29
- Metrix.getSessionId = function(callback) {
30
- module_metrix.getSessionId(callback);
30
+ Metrix.setSessionIdListener = function(callback) {
31
+ eventEmitter.addListener('onSessionIdChangedListener', callback);
32
+ module_metrix.setSessionIdListener();
31
33
  };
32
34
 
33
35
  Metrix.setOnAttributionChangedListener = function(callback) {
@@ -25,7 +25,7 @@ BOOL hasAttributionListener;
25
25
 
26
26
  - (NSArray<NSString *> *)supportedEvents
27
27
  {
28
- return @[@"onAttributionChangedListener", @"onUserIdListener", @"onDeeplinkResponseListener"];
28
+ return @[@"onAttributionChangedListener", @"onUserIdListener", @"onDeeplinkResponseListener", @"onSessionNumberChangedListener", @"onSessionIdChangedListener"];
29
29
  }
30
30
 
31
31
  RCT_EXPORT_METHOD(initialize:(NSString *)appId) {
@@ -36,14 +36,16 @@ RCT_EXPORT_METHOD(setPushToken:(NSString *)token) {
36
36
  [Metrix setPushTokenWithPushToken:token];
37
37
  }
38
38
 
39
- RCT_EXPORT_METHOD(getSessionNum:(RCTResponseSenderBlock)callback) {
40
- NSInteger sessionNum = [Metrix getSessionNum];
41
- callback(@[@(sessionNum)]);
39
+ RCT_EXPORT_METHOD(setSessionNumberListener) {
40
+ [Metrix setSessionNumberListener:^(NSInteger sessionNumber) {
41
+ [self sendEventWithName:@"onSessionNumberChangedListener" body:[NSString stringWithFormat: @"%ld", (long)sessionNumber]];
42
+ }];
42
43
  }
43
44
 
44
- RCT_EXPORT_METHOD(getSessionId:(RCTResponseSenderBlock)callback) {
45
- NSString *sessionId = [Metrix getSessionId];
46
- callback(@[sessionId]);
45
+ RCT_EXPORT_METHOD(setSessionIdListener) {
46
+ [Metrix setSessionIdListener:^(NSString *sessionId) {
47
+ [self sendEventWithName:@"onSessionIdChangedListener" body:sessionId];
48
+ }];
47
49
  }
48
50
 
49
51
  RCT_EXPORT_METHOD(newCustomEvent:(NSString *)eventName attributes:(NSDictionary *)attributes) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metrixorg/react-native-plugin",
3
- "version": "1.2.0-beta09",
3
+ "version": "1.2.0-beta13",
4
4
  "description": "Metrix React native plugin",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -16,5 +16,5 @@ Pod::Spec.new do |s|
16
16
  s.dependency 'React'
17
17
 
18
18
  # MetrixFramework
19
- s.dependency 'Metrix/reactnative', '2.0.0-beta07'
19
+ s.dependency 'Metrix/reactnative', '2.0.0-beta12'
20
20
  end