@sodyo/react-native-sodyo-sdk 3.5.1 → 3.6.3
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/RNSodyoSdk.podspec +2 -2
- package/android/build.gradle +4 -1
- package/android/src/main/java/com/sodyo/RNSodyoSdk/RNSodyoSdkModule.java +38 -1
- package/ios/RNSodyoScanner.h +19 -0
- package/ios/RNSodyoScanner.m +23 -0
- package/ios/RNSodyoSdk.m +45 -3
- package/ios/RNSodyoSdkManager.m +12 -6
- package/package.json +1 -1
- package/sodyosdk.d.ts +15 -0
- package/sodyosdk.js +26 -0
package/RNSodyoSdk.podspec
CHANGED
|
@@ -12,11 +12,11 @@ Pod::Spec.new do |s|
|
|
|
12
12
|
s.author = package['author']
|
|
13
13
|
s.homepage = package['homepage']
|
|
14
14
|
s.platform = :ios, "11.0"
|
|
15
|
-
s.source = { :git => "https://github.com/sodyo-ltd/SodyoSDKPod", :commit => "
|
|
15
|
+
s.source = { :git => "https://github.com/sodyo-ltd/SodyoSDKPod", :commit => "43303e7" }
|
|
16
16
|
s.source_files = "ios/**/*.{h,m}"
|
|
17
17
|
s.requires_arc = true
|
|
18
18
|
|
|
19
19
|
s.dependency "React"
|
|
20
|
-
s.dependency "SodyoSDK", "3.
|
|
20
|
+
s.dependency "SodyoSDK", "3.55.01"
|
|
21
21
|
end
|
|
22
22
|
|
package/android/build.gradle
CHANGED
|
@@ -51,11 +51,14 @@ android {
|
|
|
51
51
|
|
|
52
52
|
repositories {
|
|
53
53
|
mavenCentral()
|
|
54
|
+
maven {
|
|
55
|
+
url 'http://172.28.2.86:8082/artifactory/local-release-qa'
|
|
56
|
+
}
|
|
54
57
|
}
|
|
55
58
|
|
|
56
59
|
dependencies {
|
|
57
60
|
implementation ('com.facebook.react:react-native:+')
|
|
58
|
-
implementation ('com.sodyo:sodyo-android-sdk:3.
|
|
61
|
+
implementation ('com.sodyo:sodyo-android-sdk:3.55.02@aar') {
|
|
59
62
|
transitive = true
|
|
60
63
|
exclude group: 'com.parse.bolts', module: 'bolts-android'
|
|
61
64
|
}
|
|
@@ -31,6 +31,8 @@ import com.sodyo.sdk.SodyoInitCallback;
|
|
|
31
31
|
import com.sodyo.sdk.SodyoScannerActivity;
|
|
32
32
|
import com.sodyo.sdk.SodyoScannerCallback;
|
|
33
33
|
import com.sodyo.sdk.SodyoMarkerContentCallback;
|
|
34
|
+
import com.sodyo.sdk.SodyoModeCallback;
|
|
35
|
+
import com.sodyo.app_sdk.data.SettingsHelper;
|
|
34
36
|
|
|
35
37
|
public class RNSodyoSdkModule extends ReactContextBaseJavaModule {
|
|
36
38
|
public static enum SodyoEnv {
|
|
@@ -78,7 +80,7 @@ public class RNSodyoSdkModule extends ReactContextBaseJavaModule {
|
|
|
78
80
|
return "RNSodyoSdk";
|
|
79
81
|
}
|
|
80
82
|
|
|
81
|
-
private class SodyoCallback implements SodyoScannerCallback, SodyoInitCallback, SodyoMarkerContentCallback {
|
|
83
|
+
private class SodyoCallback implements SodyoScannerCallback, SodyoInitCallback, SodyoMarkerContentCallback, SodyoModeCallback {
|
|
82
84
|
|
|
83
85
|
private Callback successCallback;
|
|
84
86
|
private Callback errorCallback;
|
|
@@ -106,6 +108,7 @@ public class RNSodyoSdkModule extends ReactContextBaseJavaModule {
|
|
|
106
108
|
SodyoCallback callbackClosure = new SodyoCallback(null, null);
|
|
107
109
|
Sodyo.getInstance().setSodyoScannerCallback(callbackClosure);
|
|
108
110
|
Sodyo.getInstance().setSodyoMarkerContentCallback(callbackClosure);
|
|
111
|
+
Sodyo.getInstance().setSodyoModeCallback(callbackClosure);
|
|
109
112
|
}
|
|
110
113
|
|
|
111
114
|
/**
|
|
@@ -185,6 +188,21 @@ public class RNSodyoSdkModule extends ReactContextBaseJavaModule {
|
|
|
185
188
|
|
|
186
189
|
sendEvent("EventMarkerContent", params);
|
|
187
190
|
}
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* SodyoModeCallback implementation
|
|
194
|
+
*/
|
|
195
|
+
@Override
|
|
196
|
+
public void onModeChange(SettingsHelper.ScannerViewMode oldMode, SettingsHelper.ScannerViewMode newMode) {
|
|
197
|
+
Log.i(TAG, "onModeChange()");
|
|
198
|
+
|
|
199
|
+
WritableMap params = Arguments.createMap();
|
|
200
|
+
|
|
201
|
+
params.putString("oldMode", oldMode.toString());
|
|
202
|
+
params.putString("newMode", newMode.toString());
|
|
203
|
+
|
|
204
|
+
sendEvent("ModeChangeCallback", params);
|
|
205
|
+
}
|
|
188
206
|
}
|
|
189
207
|
|
|
190
208
|
@ReactMethod
|
|
@@ -278,6 +296,25 @@ public class RNSodyoSdkModule extends ReactContextBaseJavaModule {
|
|
|
278
296
|
Sodyo.startTroubleshoot(activity);
|
|
279
297
|
}
|
|
280
298
|
|
|
299
|
+
@ReactMethod
|
|
300
|
+
public void setTroubleshootMode() {
|
|
301
|
+
Log.i(TAG, "setTroubleshootMode()");
|
|
302
|
+
Activity activity = getCurrentActivity();
|
|
303
|
+
Sodyo.setMode(activity, SettingsHelper.ScannerViewMode.Troubleshoot);
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
@ReactMethod
|
|
307
|
+
public void setNormalMode() {
|
|
308
|
+
Log.i(TAG, "setNormalMode()");
|
|
309
|
+
Activity activity = getCurrentActivity();
|
|
310
|
+
Sodyo.setMode(activity, SettingsHelper.ScannerViewMode.Normal);
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
@ReactMethod
|
|
314
|
+
public SettingsHelper.ScannerViewMode getMode() {
|
|
315
|
+
return Sodyo.getMode();
|
|
316
|
+
}
|
|
317
|
+
|
|
281
318
|
@ReactMethod
|
|
282
319
|
public void setSodyoLogoVisible(Boolean isVisible) {
|
|
283
320
|
Log.i(TAG, "setSodyoLogoVisible()");
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
//
|
|
2
|
+
// RNSodyoScanner.h
|
|
3
|
+
// Pods
|
|
4
|
+
//
|
|
5
|
+
// Created by Bogdan on 20.06.2022.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#ifndef RNSodyoScanner_h
|
|
9
|
+
#define RNSodyoScanner_h
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
#endif /* RNSodyoScanner_h */
|
|
13
|
+
|
|
14
|
+
static UIViewController* sodyoScanner = nil;
|
|
15
|
+
|
|
16
|
+
@interface RNSodyoScanner : NSObject
|
|
17
|
+
+ (UIViewController *)getSodyoScanner;
|
|
18
|
+
+ (void)setSodyoScanner:(UIViewController *)sodyoScanner;
|
|
19
|
+
@end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
//
|
|
2
|
+
// RNSodyoCallback.m
|
|
3
|
+
// RNSodyoSdk
|
|
4
|
+
//
|
|
5
|
+
// Created by Bogdan on 20.06.2022.
|
|
6
|
+
//
|
|
7
|
+
#import "RNSodyoScanner.h"
|
|
8
|
+
#import <Foundation/Foundation.h>
|
|
9
|
+
|
|
10
|
+
@implementation RNSodyoScanner
|
|
11
|
+
|
|
12
|
+
+ (UIViewController *) getSodyoScanner {
|
|
13
|
+
return sodyoScanner;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
+ (void) setSodyoScanner:(UIViewController*) newSodyoScanner {
|
|
17
|
+
if(sodyoScanner != newSodyoScanner) {
|
|
18
|
+
sodyoScanner = newSodyoScanner;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
@end
|
|
23
|
+
// implementation of getter and setter
|
package/ios/RNSodyoSdk.m
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
#import "RNSodyoSdk.h"
|
|
3
|
+
#import "RNSodyoScanner.h"
|
|
3
4
|
|
|
4
5
|
@implementation RNSodyoSdk
|
|
5
6
|
|
|
@@ -97,6 +98,23 @@ RCT_EXPORT_METHOD(startTroubleshoot)
|
|
|
97
98
|
[SodyoSDK startTroubleshoot:sodyoScanner];
|
|
98
99
|
}
|
|
99
100
|
|
|
101
|
+
|
|
102
|
+
RCT_EXPORT_METHOD(setTroubleshootMode)
|
|
103
|
+
{
|
|
104
|
+
NSLog(@"setTroubleshootMode");
|
|
105
|
+
sodyoScanner = [RNSodyoScanner getSodyoScanner];
|
|
106
|
+
|
|
107
|
+
[SodyoSDK setMode:sodyoScanner mode:SodyoModeTroubleshoot];
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
RCT_EXPORT_METHOD(setNormalMode)
|
|
111
|
+
{
|
|
112
|
+
NSLog(@"setNormalMode");
|
|
113
|
+
sodyoScanner = [RNSodyoScanner getSodyoScanner];
|
|
114
|
+
|
|
115
|
+
[SodyoSDK setMode:sodyoScanner mode:SodyoModeNormal];
|
|
116
|
+
}
|
|
117
|
+
|
|
100
118
|
RCT_EXPORT_METHOD(setSodyoLogoVisible:(BOOL *) isVisible)
|
|
101
119
|
{
|
|
102
120
|
NSLog(@"setSodyoLogoVisible");
|
|
@@ -118,13 +136,16 @@ RCT_EXPORT_METHOD(setEnv:(NSString *) env)
|
|
|
118
136
|
|
|
119
137
|
- (NSArray<NSString *> *)supportedEvents
|
|
120
138
|
{
|
|
121
|
-
return @[@"EventSodyoError", @"EventMarkerDetectSuccess", @"EventMarkerDetectError", @"EventMarkerContent", @"EventCloseSodyoContent"];
|
|
139
|
+
return @[@"EventSodyoError", @"EventMarkerDetectSuccess", @"EventMarkerDetectError", @"EventMarkerContent", @"EventCloseSodyoContent", @"ModeChangeCallback"];
|
|
122
140
|
}
|
|
123
141
|
|
|
124
142
|
- (void) launchSodyoScanner {
|
|
125
143
|
NSLog(@"launchSodyoScanner");
|
|
126
|
-
|
|
127
|
-
|
|
144
|
+
sodyoScanner = [RNSodyoScanner getSodyoScanner];
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
if (!sodyoScanner) {
|
|
148
|
+
[RNSodyoScanner setSodyoScanner:sodyoScanner];
|
|
128
149
|
}
|
|
129
150
|
|
|
130
151
|
if (sodyoScanner.isViewLoaded && sodyoScanner.view.window) {
|
|
@@ -149,6 +170,17 @@ RCT_EXPORT_METHOD(setEnv:(NSString *) env)
|
|
|
149
170
|
[self sendEventWithName:@"EventCloseSodyoContent" body:nil];
|
|
150
171
|
}
|
|
151
172
|
|
|
173
|
+
- (NSString *) convertScannerModeToString:(SodyoMode)mode {
|
|
174
|
+
switch (mode) {
|
|
175
|
+
case SodyoModeTroubleshoot:
|
|
176
|
+
return @"Troubleshoot";
|
|
177
|
+
case SodyoModeNormal:
|
|
178
|
+
return @"Normal";
|
|
179
|
+
default:
|
|
180
|
+
return @"";
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
152
184
|
#pragma mark - SodyoSDKDelegate
|
|
153
185
|
- (void) onSodyoAppLoadSuccess:(NSInteger)AppID {
|
|
154
186
|
NSLog(@"onSodyoAppLoadSuccess");
|
|
@@ -184,4 +216,14 @@ RCT_EXPORT_METHOD(setEnv:(NSString *) env)
|
|
|
184
216
|
NSLog(@"SodyoMarkerDetectedWithData: %@", Data);
|
|
185
217
|
[self sendEventWithName:@"EventMarkerContent" body:@{@"markerId": markerId, @"data": Data}];
|
|
186
218
|
}
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
- (void) onModeChange:(SodyoMode)from to:(SodyoMode)to {
|
|
222
|
+
NSLog(@"onModeChange");
|
|
223
|
+
NSString* fromConverted = [self convertScannerModeToString:from];
|
|
224
|
+
NSString* toConverted = [self convertScannerModeToString:to];
|
|
225
|
+
|
|
226
|
+
[self sendEventWithName:@"ModeChangeCallback" body:@{@"oldMode": fromConverted, @"newMode": toConverted}];
|
|
227
|
+
}
|
|
228
|
+
|
|
187
229
|
@end
|
package/ios/RNSodyoSdkManager.m
CHANGED
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
|
|
15
15
|
#import <UIKit/UIKit.h>
|
|
16
16
|
#import "RNSodyoSdkView.m"
|
|
17
|
+
#import "RNSodyoScanner.h"
|
|
17
18
|
|
|
18
19
|
@interface RNSodyoSdkManager : RCTViewManager {
|
|
19
|
-
UIViewController *sodyoScanner;
|
|
20
20
|
}
|
|
21
21
|
@end
|
|
22
22
|
|
|
@@ -28,23 +28,27 @@ RCT_CUSTOM_VIEW_PROPERTY(isEnabled, BOOL, UIView)
|
|
|
28
28
|
{
|
|
29
29
|
NSLog(@"RNSodyoSdkManager set isEnabled");
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
sodyoScanner = [RNSodyoScanner getSodyoScanner];
|
|
32
|
+
|
|
33
|
+
if (!sodyoScanner) {
|
|
32
34
|
return;
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
if ([RCTConvert BOOL:json]) {
|
|
36
|
-
[SodyoSDK startScanning:
|
|
38
|
+
[SodyoSDK startScanning:sodyoScanner];
|
|
37
39
|
return;
|
|
38
40
|
}
|
|
39
41
|
|
|
40
|
-
[SodyoSDK stopScanning:
|
|
42
|
+
[SodyoSDK stopScanning:sodyoScanner];
|
|
41
43
|
}
|
|
42
44
|
|
|
43
45
|
RCT_CUSTOM_VIEW_PROPERTY(isTroubleShootingEnabled, BOOL, UIView)
|
|
44
46
|
{
|
|
45
47
|
NSLog(@"RNSodyoSdkManager set isTroubleShootingEnabled");
|
|
46
48
|
|
|
47
|
-
|
|
49
|
+
sodyoScanner = [RNSodyoScanner getSodyoScanner];
|
|
50
|
+
|
|
51
|
+
if (!sodyoScanner) {
|
|
48
52
|
return;
|
|
49
53
|
}
|
|
50
54
|
|
|
@@ -58,7 +62,9 @@ RCT_CUSTOM_VIEW_PROPERTY(isTroubleShootingEnabled, BOOL, UIView)
|
|
|
58
62
|
{
|
|
59
63
|
UIViewController *rootViewController = [UIApplication sharedApplication].delegate.window.rootViewController;
|
|
60
64
|
|
|
61
|
-
|
|
65
|
+
sodyoScanner = [SodyoSDK initSodyoScanner];
|
|
66
|
+
|
|
67
|
+
[RNSodyoScanner setSodyoScanner:sodyoScanner];
|
|
62
68
|
[rootViewController addChildViewController:sodyoScanner];
|
|
63
69
|
|
|
64
70
|
RNSodyoSdkView *view = [[RNSodyoSdkView alloc] initWithView:sodyoScanner.view];
|
package/package.json
CHANGED
package/sodyosdk.d.ts
CHANGED
|
@@ -17,9 +17,13 @@ declare const _default: {
|
|
|
17
17
|
setAppUserId (appUserId: string): void
|
|
18
18
|
removeAllListeners (eventType?: string): void
|
|
19
19
|
onMarkerContent (callback: (markerId: string, data: { [key: string]: any }) => void): () => void,
|
|
20
|
+
onModeChange (callback: (data: { [key: string]: any }) => void): () => void,
|
|
20
21
|
performMarker (markerId: string): void,
|
|
21
22
|
startTroubleshoot (): void,
|
|
22
23
|
setSodyoLogoVisible (isVisible: boolean): void,
|
|
24
|
+
setTroubleshootMode (): void,
|
|
25
|
+
setNormalMode (): void,
|
|
26
|
+
getMode (): EScannerViewMode,
|
|
23
27
|
setEnv(env: TEnv): void,
|
|
24
28
|
}
|
|
25
29
|
|
|
@@ -35,4 +39,15 @@ export declare const SODYO_ENV: {
|
|
|
35
39
|
[key in TEnv]: TEnv
|
|
36
40
|
}
|
|
37
41
|
|
|
42
|
+
export enum EScannerViewMode {
|
|
43
|
+
NORMAL = 'Normal',
|
|
44
|
+
TROUBLESHOOT = 'Troubleshoot',
|
|
45
|
+
DEVICE_TESTER = 'DeviceTester'
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export interface ISodyoMode {
|
|
49
|
+
newMode: EScannerViewMode,
|
|
50
|
+
oldMode: EScannerViewMode,
|
|
51
|
+
}
|
|
52
|
+
|
|
38
53
|
export default _default
|
package/sodyosdk.js
CHANGED
|
@@ -66,6 +66,20 @@ export default {
|
|
|
66
66
|
};
|
|
67
67
|
},
|
|
68
68
|
|
|
69
|
+
onModeChange: (callback) => {
|
|
70
|
+
eventEmitter.removeAllListeners('ModeChangeCallback');
|
|
71
|
+
|
|
72
|
+
const subscription = eventEmitter.addListener('ModeChangeCallback', (e) => {
|
|
73
|
+
if (typeof callback === 'function') {
|
|
74
|
+
callback(e);
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
return () => {
|
|
79
|
+
return subscription.remove();
|
|
80
|
+
};
|
|
81
|
+
},
|
|
82
|
+
|
|
69
83
|
onCloseContent: (callback) => {
|
|
70
84
|
if (Platform.OS !== 'ios') {
|
|
71
85
|
return () => undefined;
|
|
@@ -151,9 +165,21 @@ export default {
|
|
|
151
165
|
return RNSodyoSdk.setSodyoLogoVisible(isVisible);
|
|
152
166
|
},
|
|
153
167
|
|
|
168
|
+
setTroubleshootMode: () => {
|
|
169
|
+
return RNSodyoSdk.setTroubleshootMode();
|
|
170
|
+
},
|
|
171
|
+
|
|
172
|
+
setNormalMode: () => {
|
|
173
|
+
return RNSodyoSdk.setNormalMode();
|
|
174
|
+
},
|
|
175
|
+
|
|
154
176
|
setEnv: (env) => {
|
|
155
177
|
return RNSodyoSdk.setEnv(env);
|
|
156
178
|
},
|
|
179
|
+
|
|
180
|
+
getMode: () => {
|
|
181
|
+
return RNSodyoSdk.getMode();
|
|
182
|
+
},
|
|
157
183
|
};
|
|
158
184
|
|
|
159
185
|
export class Scanner extends Component {
|