You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+14-4Lines changed: 14 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,20 @@
2
2
3
3
All notable changes to this project will be documented in this file.
4
4
5
+
## [1.5.41]
6
+
7
+
### New
8
+
9
+
- 🚀 Flutter CaptureSDK is back to being public 🚀
10
+
11
+
### Improvements
12
+
13
+
- Upgrade to `Flutter SDK v3.3.0`
14
+
- Upgrade to `Gradle 8.5.0`. See [this flutter.dev guide](https://docs.flutter.dev/release/breaking-changes/flutter-gradle-plugin-apply) for more information
15
+
- Upgrade to [`iOS CaptureSDK v1.9.74`](https://github.com/SocketMobile/cocoapods-capturesdk)
16
+
17
+
### Fixed
18
+
5
19
## [1.5.19] - 2024-09-24
6
20
7
21
### Fixed
@@ -27,10 +41,6 @@ All notable changes to this project will be documented in this file.
27
41
- Update http package to 1.2.1 from [issue on Github](https://github.com/SocketMobile/capturesdk_flutter/issues/4)
28
42
- Update the documentation to implement SocketCam on iOS
29
43
30
-
## Not available here from April 17th 2024
31
-
32
-
- SocketCam C860 is available through our [Developer Portal](https://www.socketmobile.com/developers/portal). For more information and how to access, please visit our page [about this new product](https://www.socketmobile.com/readers-accessories/product-families/socketcam).
The repository has been relocated within the Socket Mobile [Developer Portal](https://www.socketmobile.com/developers/portal) to enhance camera scanning capabilities with the SocketCam C860.
12
-
13
-
It employs a high-performance decoder capable of swiftly reading damaged barcodes in various lighting conditions.
14
-
15
-
The new SocketCam C860 is provided to developers at no cost and requires no additional coding efforts if the application includes a UI trigger button.
16
-
17
-
Activation of the C860 is left to the application's end user, who can enable its use by purchasing a subscription.
18
-
19
-
It's important to note that the free version of our camera-based scanner, the SocketCam C820, remains accessible.
20
-
21
-
Both the C860 and C820 utilize the same APIs as our physical scanner products, ensuring a seamless transition between a camera-based scanner and a physical barcode scanner.
22
-
23
-
More documentation can be found [here](https://docs.socketmobile.com/captureflutter/en/latest/"CaptureSDK Documentation").
24
-
25
-
For more information and how to access, please visit our page [about this new product](https://www.socketmobile.com/readers-accessories/product-families/socketcam).
26
-
27
-
On 1st of July 2024, there won't be any support for this repository and we will focus on the Flutter CaptureSDK hosted through our [DEVELOPERS PORTAL](https://www.socketmobile.com/dev-portal/portal).
3
+
This is the Flutter CatureSDK for Socket Mobile's Capture library.
28
4
29
5
## Devices compatibility and CaptureSDK versions
30
6
@@ -45,10 +21,7 @@ Install the flutter package by adding the following to your `pubspec.yaml` file.
For the rest of the things to add in your project, go to **[iOS](#getting-started-ios)** and **[Android](#getting-started-android)**.
62
35
36
+
## Getting started iOS (first section) - Important note
37
+
38
+
You will need to change three things in your app in order for it to work with iOS. First will need to update the `Podfile` in the `ios` directory of your app in order to be compatible with the version used in our SDK and the source of our iOS CaptureSDK Cocoapods private repository.
39
+
40
+
```ruby
41
+
source 'https://github.com/CocoaPods/Specs.git'
42
+
43
+
platform :ios, '13.0'# minimum target requirement for CaptureSDK iOS
44
+
45
+
target 'MyProject'do
46
+
....
47
+
end
48
+
```
49
+
63
50
## Getting started
64
51
65
52
Create a `Capture` instance with the line `Capture capture = Capture(logger);`. `logger` is an optional argument that is passed to `Capture` and can be helpful with tracing values and requests throughout the app, particularly in `Capture` and `HttpTransport` where the bulk of the Capture logic and requests are handled.
@@ -72,7 +59,7 @@ stat = 'handle: $response';
72
59
mess = 'capture open success';
73
60
```
74
61
75
-
`appInfo` is an instance of the `AppInfo` class and consists of the same parameters found in other Capture SDKs. See an example of `appInfo` below.
62
+
`appInfo` is an instance of the `AppInfo` class and consists of the same parameters found in other CaptureSDKs. See an example of `appInfo` below.
76
63
77
64
```dart
78
65
final appInfo = AppInfo(
@@ -85,7 +72,7 @@ final appInfo = AppInfo(
85
72
86
73
To generate app info, head to the [docs](https://www.socketmobile.com/developers/portal/application-details/appkey-registration) and follow the prompts to register your app and generate your `appInfo` credentials. See the important section at the end of the README for more information specific to Flutter.
87
74
88
-
Next, `_onCaptureEvent` is the callback passed to `open` that can handle the event notifications from the Capture SDK. Below are three important events to consider, which are accessible in the `CaptureEventIds` class.
75
+
Next, `_onCaptureEvent` is the callback passed to `open` that can handle the event notifications from the CaptureSDK. Below are three important events to consider, which are accessible in the `CaptureEventIds` class.
89
76
90
77
`deviceArrival` is the event that is triggered when the scanner connects to your device.
91
78
@@ -180,10 +167,10 @@ The response in `setProperty` does not contain a `value` property. You can acces
180
167
181
168
## Getting started iOS
182
169
183
-
You will need to change three things in your app in order for it to work with iOS. First will need to update the `Podfile` in the `ios` directory of your app in order to be compatible with the version used in our SDK and the source of our iOS CaptureSDK
170
+
You will need to change three things in your app in order for it to work with iOS. First will need to update the `Podfile` in the `ios` directory of your app in order to be compatible with the version used in our SDK and the source of our iOS CaptureSDK Cocoapods private repository.
@@ -209,8 +196,6 @@ Second, go to `ios/Runner/Info.plist` and at the bottom, just above `</dict>`, i
209
196
</array>
210
197
```
211
198
212
-
If you do not do this, you will encounter an error saying `This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSBluetoothAlwaysUsageDescription key with a string value explaining to the user how the app uses this data.`. This is a bluetooth security measure, and to permit bluetooth access you will need to add the above entry in your `Info.plist` file. The other item related to `NSCameraUsageDescription` is to permit camera access in order to use SocketCam C820 and C860
213
-
214
199
For SocketCam C860 which is an enhanced version of SocketCam C820, you also need to add the following key to your `Info.plist`: **LSApplicationQueriesSchemes** (*Queried URL Schemes*) with a new item: **sktcompanion** (in lower case).
215
200
216
201
In order to use it you have to install [Socket Mobile Companion](https://apps.apple.com/app/socket-mobile-companion/id1175638950) on your device.
@@ -247,6 +232,35 @@ ALSO: The package name in `AndroidManifest.xml`, it needs to be both all lowerca
flutterEngine.getPlugins().add(newCaptureModule(getApplicationContext())); // register CaptureSDK as a plugin here
248
+
}
249
+
}
250
+
```
251
+
252
+
In your app's `builde.gradle` file add the 2 following options:
253
+
254
+
```java
255
+
buildTypes {
256
+
release {
257
+
minifyEnabled false<------- to add
258
+
shrinkResources false<------- to add
259
+
signingConfig = signingConfigs.debug
260
+
}
261
+
}
262
+
```
263
+
250
264
## Enable Start Capture Service on Android
251
265
252
266
You might also have to add the file `network_security_config.xml` file to `android/app/src/main/res/xml` in order to avoid a `clearText` permissions error. See the code below for the file.
0 commit comments