@blueid/access-capacitor 1.16.0 → 1.19.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/android/build.gradle +4 -4
- package/android/repo/net/blueid/access/5.0/access-5.0-sources.jar +0 -0
- package/android/repo/net/blueid/access/5.0/access-5.0-sources.jar.md5 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0-sources.jar.sha1 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0-sources.jar.sha256 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0-sources.jar.sha512 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.aar +0 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.aar.md5 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.aar.sha1 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.aar.sha256 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.aar.sha512 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.module +257 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.module.md5 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.module.sha1 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.module.sha256 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.module.sha512 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.pom +160 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.pom.md5 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.pom.sha1 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.pom.sha256 +1 -0
- package/android/repo/net/blueid/access/5.0/access-5.0.pom.sha512 +1 -0
- package/android/repo/net/blueid/access/maven-metadata.xml +13 -0
- package/android/repo/net/blueid/access/maven-metadata.xml.md5 +1 -0
- package/android/repo/net/blueid/access/maven-metadata.xml.sha1 +1 -0
- package/android/repo/net/blueid/access/maven-metadata.xml.sha256 +1 -0
- package/android/repo/net/blueid/access/maven-metadata.xml.sha512 +1 -0
- package/ios/CBlueIDAccess.xcframework/Info.plist +5 -5
- package/ios/CBlueIDAccess.xcframework/ios-arm64/libCBlueIDAccess.a +0 -0
- package/ios/CBlueIDAccess.xcframework/ios-arm64_x86_64-simulator/libCBlueIDAccess.a +0 -0
- package/ios/CBlueIDAccess.xcframework/macos-arm64_x86_64/libCBlueIDAccess.a +0 -0
- package/ios/Plugin/BlueIDAccessSDK/BlueAppDelegate.swift +3 -0
- package/ios/Plugin/BlueIDAccessSDK/BlueBluetooth.swift +21 -0
- package/ios/Plugin/BlueIDAccessSDK/BlueDevices.swift +11 -25
- package/ios/Plugin/BlueIDAccessSDK/BlueDevicesList.swift +89 -0
- package/ios/Plugin/BlueIDAccessSDK/BlueSPTransponder.swift +1 -3
- package/package.json +2 -1
package/android/build.gradle
CHANGED
|
@@ -11,7 +11,7 @@ buildscript {
|
|
|
11
11
|
mavenCentral()
|
|
12
12
|
}
|
|
13
13
|
dependencies {
|
|
14
|
-
classpath 'com.android.tools.build:gradle:8.0.
|
|
14
|
+
classpath 'com.android.tools.build:gradle:8.0.2'
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
|
|
@@ -19,10 +19,10 @@ apply plugin: 'com.android.library'
|
|
|
19
19
|
|
|
20
20
|
android {
|
|
21
21
|
namespace "com.blueid.access.plugins.capacitor"
|
|
22
|
-
compileSdkVersion project.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion :
|
|
22
|
+
compileSdkVersion project.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion : 34
|
|
23
23
|
defaultConfig {
|
|
24
|
-
minSdkVersion project.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion :
|
|
25
|
-
targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion :
|
|
24
|
+
minSdkVersion project.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion : 30
|
|
25
|
+
targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 34
|
|
26
26
|
versionCode 1
|
|
27
27
|
versionName "1.0"
|
|
28
28
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
4b5b566ab76c364fc8e7c24c410a40f2
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
f7e210c54fe9b23e72d7f3c88f0a8ebfa54a106b
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ac3c7a633e9a446177b1100e8fcaf14c94681c0860f7c4cf8da7a031435c23fe
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0fdaabbae28e381782bce56de50e0869e13d6144397ff03af368de0d85c46efe4f393369c796ee9206a0667a6b1ac1d9eca4ecc60d365810b4d63a8ded6c8155
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
edbcee983ca076d05b3abd2da31bf74a
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3e4877787d664c9f2cdd11ec4107f0c728b71dd1
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
50447fd265c245f097093bc8499ba54499b2c423690425c39ad42a4b2bc80b4b
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
cd7a9541338e24ae60642b7d190acaa96361c3a0e9deb2d4e3ab935a7351d513b2e23c3741e7fb94fc407ac8c2f5d3ba8018ca2020c4740a59d6bdb9aaf4e21c
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
{
|
|
2
|
+
"formatVersion": "1.1",
|
|
3
|
+
"component": {
|
|
4
|
+
"group": "net.blueid",
|
|
5
|
+
"module": "access",
|
|
6
|
+
"version": "5.0",
|
|
7
|
+
"attributes": {
|
|
8
|
+
"org.gradle.status": "release"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"createdBy": {
|
|
12
|
+
"gradle": {
|
|
13
|
+
"version": "8.4"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"variants": [
|
|
17
|
+
{
|
|
18
|
+
"name": "releaseApiElements-published",
|
|
19
|
+
"attributes": {
|
|
20
|
+
"org.gradle.category": "library",
|
|
21
|
+
"org.gradle.usage": "java-api",
|
|
22
|
+
"org.jetbrains.kotlin.platform.type": "androidJvm"
|
|
23
|
+
},
|
|
24
|
+
"dependencies": [
|
|
25
|
+
{
|
|
26
|
+
"group": "org.jetbrains.kotlin",
|
|
27
|
+
"module": "kotlin-stdlib",
|
|
28
|
+
"version": {
|
|
29
|
+
"requires": "1.9.22"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
"files": [
|
|
34
|
+
{
|
|
35
|
+
"name": "access-5.0.aar",
|
|
36
|
+
"url": "access-5.0.aar",
|
|
37
|
+
"size": 2758664,
|
|
38
|
+
"sha512": "cd7a9541338e24ae60642b7d190acaa96361c3a0e9deb2d4e3ab935a7351d513b2e23c3741e7fb94fc407ac8c2f5d3ba8018ca2020c4740a59d6bdb9aaf4e21c",
|
|
39
|
+
"sha256": "50447fd265c245f097093bc8499ba54499b2c423690425c39ad42a4b2bc80b4b",
|
|
40
|
+
"sha1": "3e4877787d664c9f2cdd11ec4107f0c728b71dd1",
|
|
41
|
+
"md5": "edbcee983ca076d05b3abd2da31bf74a"
|
|
42
|
+
}
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"name": "releaseRuntimeElements-published",
|
|
47
|
+
"attributes": {
|
|
48
|
+
"org.gradle.category": "library",
|
|
49
|
+
"org.gradle.usage": "java-runtime",
|
|
50
|
+
"org.jetbrains.kotlin.platform.type": "androidJvm"
|
|
51
|
+
},
|
|
52
|
+
"dependencies": [
|
|
53
|
+
{
|
|
54
|
+
"group": "androidx.room",
|
|
55
|
+
"module": "room-runtime",
|
|
56
|
+
"version": {
|
|
57
|
+
"requires": "2.6.1"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"group": "com.google.android.material",
|
|
62
|
+
"module": "material",
|
|
63
|
+
"version": {
|
|
64
|
+
"requires": "1.11.0"
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"group": "androidx.room",
|
|
69
|
+
"module": "room-ktx",
|
|
70
|
+
"version": {
|
|
71
|
+
"requires": "2.6.1"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"group": "androidx.appcompat",
|
|
76
|
+
"module": "appcompat",
|
|
77
|
+
"version": {
|
|
78
|
+
"requires": "1.6.1"
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"group": "com.squareup.retrofit2",
|
|
83
|
+
"module": "retrofit",
|
|
84
|
+
"version": {
|
|
85
|
+
"requires": "2.9.0"
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"group": "com.squareup.retrofit2",
|
|
90
|
+
"module": "converter-scalars",
|
|
91
|
+
"version": {
|
|
92
|
+
"requires": "2.9.0"
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"group": "com.squareup.okhttp3",
|
|
97
|
+
"module": "logging-interceptor",
|
|
98
|
+
"version": {
|
|
99
|
+
"requires": "4.11.0"
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"group": "com.jakewharton.retrofit",
|
|
104
|
+
"module": "retrofit2-kotlinx-serialization-converter",
|
|
105
|
+
"version": {
|
|
106
|
+
"requires": "1.0.0"
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"group": "no.nordicsemi.android.kotlin.ble",
|
|
111
|
+
"module": "scanner",
|
|
112
|
+
"version": {
|
|
113
|
+
"requires": "1.0.13"
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"group": "no.nordicsemi.android.kotlin.ble",
|
|
118
|
+
"module": "client",
|
|
119
|
+
"version": {
|
|
120
|
+
"requires": "1.0.13"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"group": "com.google.protobuf",
|
|
125
|
+
"module": "protobuf-java",
|
|
126
|
+
"version": {
|
|
127
|
+
"requires": "3.25.3"
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"group": "com.google.protobuf",
|
|
132
|
+
"module": "protobuf-java-util",
|
|
133
|
+
"version": {
|
|
134
|
+
"requires": "3.25.3"
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"group": "androidx.activity",
|
|
139
|
+
"module": "activity-ktx",
|
|
140
|
+
"version": {
|
|
141
|
+
"requires": "1.8.2"
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"group": "androidx.annotation",
|
|
146
|
+
"module": "annotation",
|
|
147
|
+
"version": {
|
|
148
|
+
"requires": "1.7.1"
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"group": "org.jetbrains.kotlinx",
|
|
153
|
+
"module": "kotlinx-coroutines-android",
|
|
154
|
+
"version": {
|
|
155
|
+
"requires": "1.7.3"
|
|
156
|
+
}
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"group": "org.jetbrains.kotlinx",
|
|
160
|
+
"module": "kotlinx-serialization-json",
|
|
161
|
+
"version": {
|
|
162
|
+
"requires": "1.6.0"
|
|
163
|
+
}
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"group": "androidx.lifecycle",
|
|
167
|
+
"module": "lifecycle-viewmodel-ktx",
|
|
168
|
+
"version": {
|
|
169
|
+
"requires": "2.7.0"
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"group": "androidx.work",
|
|
174
|
+
"module": "work-runtime",
|
|
175
|
+
"version": {
|
|
176
|
+
"requires": "2.9.0"
|
|
177
|
+
}
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"group": "androidx.work",
|
|
181
|
+
"module": "work-runtime-ktx",
|
|
182
|
+
"version": {
|
|
183
|
+
"requires": "2.9.0"
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"group": "com.google.dagger",
|
|
188
|
+
"module": "dagger",
|
|
189
|
+
"version": {
|
|
190
|
+
"requires": "2.50"
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"group": "com.github.skydoves",
|
|
195
|
+
"module": "sandwich-retrofit",
|
|
196
|
+
"version": {
|
|
197
|
+
"requires": "2.0.6"
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"group": "org.jetbrains.kotlin",
|
|
202
|
+
"module": "kotlin-reflect",
|
|
203
|
+
"version": {
|
|
204
|
+
"requires": "1.9.22"
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"group": "org.mockito",
|
|
209
|
+
"module": "mockito-bom",
|
|
210
|
+
"version": {
|
|
211
|
+
"requires": "5.11.0"
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"group": "org.jetbrains.kotlin",
|
|
216
|
+
"module": "kotlin-stdlib",
|
|
217
|
+
"version": {
|
|
218
|
+
"requires": "1.9.22"
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
],
|
|
222
|
+
"files": [
|
|
223
|
+
{
|
|
224
|
+
"name": "access-5.0.aar",
|
|
225
|
+
"url": "access-5.0.aar",
|
|
226
|
+
"size": 2758664,
|
|
227
|
+
"sha512": "cd7a9541338e24ae60642b7d190acaa96361c3a0e9deb2d4e3ab935a7351d513b2e23c3741e7fb94fc407ac8c2f5d3ba8018ca2020c4740a59d6bdb9aaf4e21c",
|
|
228
|
+
"sha256": "50447fd265c245f097093bc8499ba54499b2c423690425c39ad42a4b2bc80b4b",
|
|
229
|
+
"sha1": "3e4877787d664c9f2cdd11ec4107f0c728b71dd1",
|
|
230
|
+
"md5": "edbcee983ca076d05b3abd2da31bf74a"
|
|
231
|
+
}
|
|
232
|
+
]
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
"name": "releaseSourcesElements-published",
|
|
236
|
+
"attributes": {
|
|
237
|
+
"org.gradle.category": "documentation",
|
|
238
|
+
"org.gradle.dependency.bundling": "external",
|
|
239
|
+
"org.gradle.docstype": "sources",
|
|
240
|
+
"org.gradle.libraryelements": "jar",
|
|
241
|
+
"org.gradle.usage": "java-runtime",
|
|
242
|
+
"org.jetbrains.kotlin.platform.type": "androidJvm"
|
|
243
|
+
},
|
|
244
|
+
"files": [
|
|
245
|
+
{
|
|
246
|
+
"name": "access-5.0-sources.jar",
|
|
247
|
+
"url": "access-5.0-sources.jar",
|
|
248
|
+
"size": 909298,
|
|
249
|
+
"sha512": "0fdaabbae28e381782bce56de50e0869e13d6144397ff03af368de0d85c46efe4f393369c796ee9206a0667a6b1ac1d9eca4ecc60d365810b4d63a8ded6c8155",
|
|
250
|
+
"sha256": "ac3c7a633e9a446177b1100e8fcaf14c94681c0860f7c4cf8da7a031435c23fe",
|
|
251
|
+
"sha1": "f7e210c54fe9b23e72d7f3c88f0a8ebfa54a106b",
|
|
252
|
+
"md5": "4b5b566ab76c364fc8e7c24c410a40f2"
|
|
253
|
+
}
|
|
254
|
+
]
|
|
255
|
+
}
|
|
256
|
+
]
|
|
257
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
999f39fedb83ceb690d310dad99e6cbb
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
d5c21392c1e9c947d19d2c84809c2b1d9110b82b
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
c0f5695efbbc71887d2fcab844ca968a53acada73b04ea0e3c32cf233913683b
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
7bea45c6bd4f5a98ef58ca4916f50158ef082c94098036ebcfcb373342c7e2ca53d27b4f5508caf2b9a1e81475bba6a021ce763af106375937de2ce051746673
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
|
3
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
4
|
+
<!-- This module was also published with a richer model, Gradle metadata, -->
|
|
5
|
+
<!-- which should be used instead. Do not delete the following line which -->
|
|
6
|
+
<!-- is to indicate to Gradle or any Gradle module metadata file consumer -->
|
|
7
|
+
<!-- that they should prefer consuming it instead. -->
|
|
8
|
+
<!-- do_not_remove: published-with-gradle-metadata -->
|
|
9
|
+
<modelVersion>4.0.0</modelVersion>
|
|
10
|
+
<groupId>net.blueid</groupId>
|
|
11
|
+
<artifactId>access</artifactId>
|
|
12
|
+
<version>5.0</version>
|
|
13
|
+
<packaging>aar</packaging>
|
|
14
|
+
<dependencies>
|
|
15
|
+
<dependency>
|
|
16
|
+
<groupId>org.jetbrains.kotlin</groupId>
|
|
17
|
+
<artifactId>kotlin-stdlib</artifactId>
|
|
18
|
+
<version>1.9.22</version>
|
|
19
|
+
<scope>compile</scope>
|
|
20
|
+
</dependency>
|
|
21
|
+
<dependency>
|
|
22
|
+
<groupId>androidx.room</groupId>
|
|
23
|
+
<artifactId>room-runtime</artifactId>
|
|
24
|
+
<version>2.6.1</version>
|
|
25
|
+
<scope>runtime</scope>
|
|
26
|
+
</dependency>
|
|
27
|
+
<dependency>
|
|
28
|
+
<groupId>com.google.android.material</groupId>
|
|
29
|
+
<artifactId>material</artifactId>
|
|
30
|
+
<version>1.11.0</version>
|
|
31
|
+
<scope>runtime</scope>
|
|
32
|
+
</dependency>
|
|
33
|
+
<dependency>
|
|
34
|
+
<groupId>androidx.room</groupId>
|
|
35
|
+
<artifactId>room-ktx</artifactId>
|
|
36
|
+
<version>2.6.1</version>
|
|
37
|
+
<scope>runtime</scope>
|
|
38
|
+
</dependency>
|
|
39
|
+
<dependency>
|
|
40
|
+
<groupId>androidx.appcompat</groupId>
|
|
41
|
+
<artifactId>appcompat</artifactId>
|
|
42
|
+
<version>1.6.1</version>
|
|
43
|
+
<scope>runtime</scope>
|
|
44
|
+
</dependency>
|
|
45
|
+
<dependency>
|
|
46
|
+
<groupId>com.squareup.retrofit2</groupId>
|
|
47
|
+
<artifactId>retrofit</artifactId>
|
|
48
|
+
<version>2.9.0</version>
|
|
49
|
+
<scope>runtime</scope>
|
|
50
|
+
</dependency>
|
|
51
|
+
<dependency>
|
|
52
|
+
<groupId>com.squareup.retrofit2</groupId>
|
|
53
|
+
<artifactId>converter-scalars</artifactId>
|
|
54
|
+
<version>2.9.0</version>
|
|
55
|
+
<scope>runtime</scope>
|
|
56
|
+
</dependency>
|
|
57
|
+
<dependency>
|
|
58
|
+
<groupId>com.squareup.okhttp3</groupId>
|
|
59
|
+
<artifactId>logging-interceptor</artifactId>
|
|
60
|
+
<version>4.11.0</version>
|
|
61
|
+
<scope>runtime</scope>
|
|
62
|
+
</dependency>
|
|
63
|
+
<dependency>
|
|
64
|
+
<groupId>com.jakewharton.retrofit</groupId>
|
|
65
|
+
<artifactId>retrofit2-kotlinx-serialization-converter</artifactId>
|
|
66
|
+
<version>1.0.0</version>
|
|
67
|
+
<scope>runtime</scope>
|
|
68
|
+
</dependency>
|
|
69
|
+
<dependency>
|
|
70
|
+
<groupId>no.nordicsemi.android.kotlin.ble</groupId>
|
|
71
|
+
<artifactId>scanner</artifactId>
|
|
72
|
+
<version>1.0.13</version>
|
|
73
|
+
<scope>runtime</scope>
|
|
74
|
+
</dependency>
|
|
75
|
+
<dependency>
|
|
76
|
+
<groupId>no.nordicsemi.android.kotlin.ble</groupId>
|
|
77
|
+
<artifactId>client</artifactId>
|
|
78
|
+
<version>1.0.13</version>
|
|
79
|
+
<scope>runtime</scope>
|
|
80
|
+
</dependency>
|
|
81
|
+
<dependency>
|
|
82
|
+
<groupId>com.google.protobuf</groupId>
|
|
83
|
+
<artifactId>protobuf-java</artifactId>
|
|
84
|
+
<version>3.25.3</version>
|
|
85
|
+
<scope>runtime</scope>
|
|
86
|
+
</dependency>
|
|
87
|
+
<dependency>
|
|
88
|
+
<groupId>com.google.protobuf</groupId>
|
|
89
|
+
<artifactId>protobuf-java-util</artifactId>
|
|
90
|
+
<version>3.25.3</version>
|
|
91
|
+
<scope>runtime</scope>
|
|
92
|
+
</dependency>
|
|
93
|
+
<dependency>
|
|
94
|
+
<groupId>androidx.activity</groupId>
|
|
95
|
+
<artifactId>activity-ktx</artifactId>
|
|
96
|
+
<version>1.8.2</version>
|
|
97
|
+
<scope>runtime</scope>
|
|
98
|
+
</dependency>
|
|
99
|
+
<dependency>
|
|
100
|
+
<groupId>androidx.annotation</groupId>
|
|
101
|
+
<artifactId>annotation</artifactId>
|
|
102
|
+
<version>1.7.1</version>
|
|
103
|
+
<scope>runtime</scope>
|
|
104
|
+
</dependency>
|
|
105
|
+
<dependency>
|
|
106
|
+
<groupId>org.jetbrains.kotlinx</groupId>
|
|
107
|
+
<artifactId>kotlinx-coroutines-android</artifactId>
|
|
108
|
+
<version>1.7.3</version>
|
|
109
|
+
<scope>runtime</scope>
|
|
110
|
+
</dependency>
|
|
111
|
+
<dependency>
|
|
112
|
+
<groupId>org.jetbrains.kotlinx</groupId>
|
|
113
|
+
<artifactId>kotlinx-serialization-json</artifactId>
|
|
114
|
+
<version>1.6.0</version>
|
|
115
|
+
<scope>runtime</scope>
|
|
116
|
+
</dependency>
|
|
117
|
+
<dependency>
|
|
118
|
+
<groupId>androidx.lifecycle</groupId>
|
|
119
|
+
<artifactId>lifecycle-viewmodel-ktx</artifactId>
|
|
120
|
+
<version>2.7.0</version>
|
|
121
|
+
<scope>runtime</scope>
|
|
122
|
+
</dependency>
|
|
123
|
+
<dependency>
|
|
124
|
+
<groupId>androidx.work</groupId>
|
|
125
|
+
<artifactId>work-runtime</artifactId>
|
|
126
|
+
<version>2.9.0</version>
|
|
127
|
+
<scope>runtime</scope>
|
|
128
|
+
</dependency>
|
|
129
|
+
<dependency>
|
|
130
|
+
<groupId>androidx.work</groupId>
|
|
131
|
+
<artifactId>work-runtime-ktx</artifactId>
|
|
132
|
+
<version>2.9.0</version>
|
|
133
|
+
<scope>runtime</scope>
|
|
134
|
+
</dependency>
|
|
135
|
+
<dependency>
|
|
136
|
+
<groupId>com.google.dagger</groupId>
|
|
137
|
+
<artifactId>dagger</artifactId>
|
|
138
|
+
<version>2.50</version>
|
|
139
|
+
<scope>runtime</scope>
|
|
140
|
+
</dependency>
|
|
141
|
+
<dependency>
|
|
142
|
+
<groupId>com.github.skydoves</groupId>
|
|
143
|
+
<artifactId>sandwich-retrofit</artifactId>
|
|
144
|
+
<version>2.0.6</version>
|
|
145
|
+
<scope>runtime</scope>
|
|
146
|
+
</dependency>
|
|
147
|
+
<dependency>
|
|
148
|
+
<groupId>org.jetbrains.kotlin</groupId>
|
|
149
|
+
<artifactId>kotlin-reflect</artifactId>
|
|
150
|
+
<version>1.9.22</version>
|
|
151
|
+
<scope>runtime</scope>
|
|
152
|
+
</dependency>
|
|
153
|
+
<dependency>
|
|
154
|
+
<groupId>org.mockito</groupId>
|
|
155
|
+
<artifactId>mockito-bom</artifactId>
|
|
156
|
+
<version>5.11.0</version>
|
|
157
|
+
<scope>runtime</scope>
|
|
158
|
+
</dependency>
|
|
159
|
+
</dependencies>
|
|
160
|
+
</project>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
26d0c37a2afe7471ed9c163d273a5044
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1253640f192cb2cbcf4627f23675bd55907a689c
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
a00b32a36f20cbe58f6e27c593e890f75c9dc1d3f9d8851ebb8d5e1b13917b98
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0133f4e1be80d72dd5bf167c7c78bd2324b26eeba79f76f99c21835926c9dbdb69f7205abf1158c3fcc8455b669a585f1d8f53b97d2fb625e418d6b2b3bbb0b1
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<metadata>
|
|
3
|
+
<groupId>net.blueid</groupId>
|
|
4
|
+
<artifactId>access</artifactId>
|
|
5
|
+
<versioning>
|
|
6
|
+
<latest>5.0</latest>
|
|
7
|
+
<release>5.0</release>
|
|
8
|
+
<versions>
|
|
9
|
+
<version>5.0</version>
|
|
10
|
+
</versions>
|
|
11
|
+
<lastUpdated>20240408201106</lastUpdated>
|
|
12
|
+
</versioning>
|
|
13
|
+
</metadata>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
fea20cb8b72b0378c243a5a9c0fd454a
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
82cb355b18e8f1dddc59c5816acf3a66bd7fc316
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
92b220235d1e6ba2b23ab3adb78c685fd26a390231ff13f7fd7f039a137ac022
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
a115da1464fabf791c63c790eb4655569322fcf5a4e3e67e3527c160d72fc51dbeba70d59b7d9028fa79150e524c84951aad1f84c6ff85fd14b2426208c35070
|
|
@@ -10,15 +10,18 @@
|
|
|
10
10
|
<key>HeadersPath</key>
|
|
11
11
|
<string>Headers</string>
|
|
12
12
|
<key>LibraryIdentifier</key>
|
|
13
|
-
<string>ios-
|
|
13
|
+
<string>ios-arm64_x86_64-simulator</string>
|
|
14
14
|
<key>LibraryPath</key>
|
|
15
15
|
<string>libCBlueIDAccess.a</string>
|
|
16
16
|
<key>SupportedArchitectures</key>
|
|
17
17
|
<array>
|
|
18
18
|
<string>arm64</string>
|
|
19
|
+
<string>x86_64</string>
|
|
19
20
|
</array>
|
|
20
21
|
<key>SupportedPlatform</key>
|
|
21
22
|
<string>ios</string>
|
|
23
|
+
<key>SupportedPlatformVariant</key>
|
|
24
|
+
<string>simulator</string>
|
|
22
25
|
</dict>
|
|
23
26
|
<dict>
|
|
24
27
|
<key>BinaryPath</key>
|
|
@@ -26,18 +29,15 @@
|
|
|
26
29
|
<key>HeadersPath</key>
|
|
27
30
|
<string>Headers</string>
|
|
28
31
|
<key>LibraryIdentifier</key>
|
|
29
|
-
<string>ios-
|
|
32
|
+
<string>ios-arm64</string>
|
|
30
33
|
<key>LibraryPath</key>
|
|
31
34
|
<string>libCBlueIDAccess.a</string>
|
|
32
35
|
<key>SupportedArchitectures</key>
|
|
33
36
|
<array>
|
|
34
37
|
<string>arm64</string>
|
|
35
|
-
<string>x86_64</string>
|
|
36
38
|
</array>
|
|
37
39
|
<key>SupportedPlatform</key>
|
|
38
40
|
<string>ios</string>
|
|
39
|
-
<key>SupportedPlatformVariant</key>
|
|
40
|
-
<string>simulator</string>
|
|
41
41
|
</dict>
|
|
42
42
|
<dict>
|
|
43
43
|
<key>BinaryPath</key>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -38,10 +38,13 @@ public final class BlueAppDelegate: NSObject {
|
|
|
38
38
|
#endif
|
|
39
39
|
|
|
40
40
|
@objc public static func willResignActive() {
|
|
41
|
+
blueBluetoothAppWillResignActive()
|
|
41
42
|
BlueAccessSyncScheduler.shared.willResignActive()
|
|
42
43
|
}
|
|
43
44
|
|
|
44
45
|
@objc public static func didBecomeActive() {
|
|
46
|
+
blueBluetoothAppDidBecomeActive()
|
|
47
|
+
|
|
45
48
|
#if os(iOS) || os(watchOS)
|
|
46
49
|
blueNearbyAppBecameActive()
|
|
47
50
|
#endif
|
|
@@ -5,6 +5,7 @@ import CBlueIDAccess
|
|
|
5
5
|
internal let blueServiceUUID = CBUUID(string: String(format: "%04X", BLUE_BLE_SERVICE_UUID))
|
|
6
6
|
|
|
7
7
|
private var blueBluetoothIsActive = false
|
|
8
|
+
private var blueBluetoothSavedState = false
|
|
8
9
|
private var blueCentralManager: CBCentralManager? = nil
|
|
9
10
|
private var blueCentralManagerListener: BlueCentralManagerListener? = nil
|
|
10
11
|
|
|
@@ -294,3 +295,23 @@ public struct BlueCheckBluetoothPermissionCommand: BlueCommand {
|
|
|
294
295
|
return "notDetermined"
|
|
295
296
|
}
|
|
296
297
|
}
|
|
298
|
+
|
|
299
|
+
internal func blueBluetoothAppDidBecomeActive() {
|
|
300
|
+
do {
|
|
301
|
+
if (blueBluetoothSavedState) {
|
|
302
|
+
try blueCommands.bluetoothActivate.run()
|
|
303
|
+
}
|
|
304
|
+
} catch {
|
|
305
|
+
blueLogError(error.localizedDescription)
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
internal func blueBluetoothAppWillResignActive() {
|
|
310
|
+
do {
|
|
311
|
+
blueBluetoothSavedState = blueBluetoothIsActive
|
|
312
|
+
|
|
313
|
+
try blueCommands.bluetoothDeactivate.run()
|
|
314
|
+
} catch {
|
|
315
|
+
blueLogError(error.localizedDescription)
|
|
316
|
+
}
|
|
317
|
+
}
|
|
@@ -2,10 +2,11 @@ import Foundation
|
|
|
2
2
|
|
|
3
3
|
internal var maxDeviceAgeSeconds = 10.0
|
|
4
4
|
|
|
5
|
-
private var blueDevices: [BlueDevice] = []
|
|
6
5
|
private var bluePurgeDevicesTimer: Timer? = nil
|
|
7
6
|
private var blueDeviceScannersCount = 0
|
|
8
7
|
|
|
8
|
+
private let blueDevicesList = BlueDevicesList()
|
|
9
|
+
|
|
9
10
|
internal func blueSetMaxDeviceAgeSeconds(_ newMaxDeviceAgeSeconds: Double) {
|
|
10
11
|
maxDeviceAgeSeconds = max(newMaxDeviceAgeSeconds, 1)
|
|
11
12
|
}
|
|
@@ -35,18 +36,11 @@ internal func waitForDeviceAvailability(_ deviceID: String, timeout: Int = 10, m
|
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
internal func blueGetDevice(_ deviceID: String) -> BlueDevice? {
|
|
38
|
-
|
|
39
|
-
if (device.info.deviceID == deviceID) {
|
|
40
|
-
return device
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
return nil
|
|
39
|
+
return blueDevicesList.get(deviceID)
|
|
45
40
|
}
|
|
46
41
|
|
|
47
42
|
internal func blueAddDevice(_ device: BlueDevice) {
|
|
48
|
-
if
|
|
49
|
-
blueDevices.append(device)
|
|
43
|
+
if blueDevicesList.add(device) {
|
|
50
44
|
blueNotifyAddeddDevice(device)
|
|
51
45
|
}
|
|
52
46
|
}
|
|
@@ -54,32 +48,24 @@ internal func blueAddDevice(_ device: BlueDevice) {
|
|
|
54
48
|
internal func bluePurgeOldDevices() {
|
|
55
49
|
let now = Date()
|
|
56
50
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
for device in blueDevices {
|
|
51
|
+
blueDevicesList.remove() { device in
|
|
60
52
|
let shouldPurge = now.timeIntervalSince(device.lastSeenAt) >= maxDeviceAgeSeconds && !isActiveDevice(device)
|
|
61
53
|
if (shouldPurge) {
|
|
62
54
|
blueNotifyRemovedDevice(device)
|
|
63
|
-
} else {
|
|
64
|
-
newDevices.append(device)
|
|
65
55
|
}
|
|
56
|
+
|
|
57
|
+
return shouldPurge
|
|
66
58
|
}
|
|
67
|
-
|
|
68
|
-
blueDevices = newDevices
|
|
69
59
|
}
|
|
70
60
|
|
|
71
61
|
internal func bluePurgeDevicesByType(_ deviceType: BlueDeviceType) {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
if (device.info.deviceType == deviceType) {
|
|
62
|
+
blueDevicesList.remove() { device in
|
|
63
|
+
let shouldPurge = device.info.deviceType == deviceType
|
|
64
|
+
if (shouldPurge) {
|
|
76
65
|
blueNotifyRemovedDevice(device)
|
|
77
|
-
} else {
|
|
78
|
-
newDevices.append(device)
|
|
79
66
|
}
|
|
67
|
+
return shouldPurge
|
|
80
68
|
}
|
|
81
|
-
|
|
82
|
-
blueDevices = newDevices
|
|
83
69
|
}
|
|
84
70
|
|
|
85
71
|
internal func blueAddDeviceScanner() {
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import Foundation
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @class BlueDevicesList
|
|
5
|
+
* A thread-safe list to manage BlueDevices.
|
|
6
|
+
* This class provides thread-safe operations for adding, retrieving, and removing BlueDevices.
|
|
7
|
+
* It internally uses a DispatchQueue with concurrent attributes to synchronize access to the list.
|
|
8
|
+
*/
|
|
9
|
+
internal class BlueDevicesList {
|
|
10
|
+
private let queue = DispatchQueue(label: "blueid.BlueDevicesList", attributes: .concurrent)
|
|
11
|
+
|
|
12
|
+
private var devices: [BlueDevice] = []
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Adds a BlueDevice to the list.
|
|
16
|
+
*
|
|
17
|
+
* - Parameters:
|
|
18
|
+
* - device: The BlueDevice to add.
|
|
19
|
+
*
|
|
20
|
+
* - Returns: `true` if the device was successfully added, `false` if a device with the same device ID already exists in the list.
|
|
21
|
+
*/
|
|
22
|
+
func add(_ device: BlueDevice) -> Bool {
|
|
23
|
+
var added = false
|
|
24
|
+
|
|
25
|
+
queue.sync(flags: .barrier) {
|
|
26
|
+
if (self.getById(device.info.deviceID) == nil) {
|
|
27
|
+
self.devices.append(device)
|
|
28
|
+
added = true
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return added
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Retrieves a BlueDevice from the list based on its device ID.
|
|
37
|
+
*
|
|
38
|
+
* - Parameters:
|
|
39
|
+
* - deviceID: The ID of the BlueDevice to retrieve.
|
|
40
|
+
*
|
|
41
|
+
* - Returns: The BlueDevice with the specified device ID, or `nil` if no device with that ID exists in the list.
|
|
42
|
+
*/
|
|
43
|
+
func get(_ deviceID: String) -> BlueDevice? {
|
|
44
|
+
var device: BlueDevice?
|
|
45
|
+
queue.sync() {
|
|
46
|
+
device = self.getById(deviceID)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return device
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Removes BlueDevices from the list based on a filter closure.
|
|
54
|
+
*
|
|
55
|
+
* - Parameters:
|
|
56
|
+
* - where: A closure that returns `true` for devices to be removed, `false` otherwise.
|
|
57
|
+
*/
|
|
58
|
+
func remove(where shouldBeRemoved: @escaping (BlueDevice) -> Bool) {
|
|
59
|
+
queue.async(flags: .barrier) {
|
|
60
|
+
var newDevices: [BlueDevice] = []
|
|
61
|
+
|
|
62
|
+
for device in self.devices {
|
|
63
|
+
if (!shouldBeRemoved(device)) {
|
|
64
|
+
newDevices.append(device)
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
self.devices.removeAll()
|
|
69
|
+
self.devices.append(contentsOf: newDevices)
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Returns the number of devices currently stored in the `BlueDevicesList`.
|
|
75
|
+
*
|
|
76
|
+
* - Returns: An integer representing the count of devices in the list.
|
|
77
|
+
*/
|
|
78
|
+
func count() -> Int {
|
|
79
|
+
var count = 0
|
|
80
|
+
queue.sync() {
|
|
81
|
+
count = self.devices.count
|
|
82
|
+
}
|
|
83
|
+
return count
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
private func getById(_ deviceID: String) -> BlueDevice? {
|
|
87
|
+
return self.devices.first { $0.info.deviceID == deviceID }
|
|
88
|
+
}
|
|
89
|
+
}
|
|
@@ -61,10 +61,8 @@ internal final class BlueSPTransponder {
|
|
|
61
61
|
|
|
62
62
|
do {
|
|
63
63
|
_ = try blueClibErrorCheck(blueSPTransponder_Release())
|
|
64
|
-
} catch let error as BlueError {
|
|
65
|
-
fatalError(error.errorDescription!)
|
|
66
64
|
} catch {
|
|
67
|
-
|
|
65
|
+
blueLogError(error.localizedDescription)
|
|
68
66
|
}
|
|
69
67
|
}
|
|
70
68
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blueid/access-capacitor",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.19.0",
|
|
4
4
|
"description": "Capacitor JS plugin for the BlueID Access SDK",
|
|
5
5
|
"main": "dist/plugin.cjs.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
"files": [
|
|
10
10
|
"android/src/main/",
|
|
11
11
|
"android/build.gradle",
|
|
12
|
+
"android/repo/",
|
|
12
13
|
"dist/",
|
|
13
14
|
"ios/Plugin/",
|
|
14
15
|
"ios/CBlueIDAccess.xcframework/",
|