@capawesome/capacitor-live-update 6.7.1 → 7.0.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/CapawesomeCapacitorLiveUpdate.podspec +2 -2
- package/Package.swift +32 -0
- package/README.md +91 -81
- package/android/build.gradle +9 -9
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/LiveUpdate.java +165 -132
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/LiveUpdateConfig.java +6 -27
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/LiveUpdateHttpClient.java +7 -2
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/LiveUpdatePlugin.java +50 -78
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/LiveUpdatePreferences.java +12 -5
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/api/GetLatestBundleResponse.java +9 -0
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/events/DownloadBundleProgressEvent.java +32 -0
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/options/DownloadBundleOptions.java +1 -10
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/results/FetchLatestBundleResult.java +13 -1
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/results/ReadyResult.java +32 -0
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/interfaces/DownloadProgressCallback.java +5 -0
- package/dist/docs.json +191 -158
- package/dist/esm/definitions.d.ts +107 -52
- package/dist/esm/definitions.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/web.d.ts +2 -2
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +1 -3
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +1 -3
- package/dist/plugin.js.map +1 -1
- package/ios/Plugin/Classes/Events/DownloadBundleProgressEvent.swift +25 -0
- package/ios/Plugin/Classes/Options/DownloadBundleOptions.swift +1 -7
- package/ios/Plugin/Classes/Results/{FetchLatestBundle.swift → FetchLatestBundleResult.swift} +6 -1
- package/ios/Plugin/Classes/Results/ReadyResult.swift +22 -0
- package/ios/Plugin/LiveUpdate.swift +167 -148
- package/ios/Plugin/LiveUpdateConfig.swift +2 -4
- package/ios/Plugin/LiveUpdateHttpClient.swift +6 -2
- package/ios/Plugin/LiveUpdatePlugin.swift +44 -38
- package/ios/Plugin/LiveUpdatePreferences.swift +9 -5
- package/ios/Plugin/Protocols/Api/GetLatestBundleResponse.swift +1 -0
- package/package.json +17 -18
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/options/SetBundleOptions.java +0 -18
- package/android/src/main/java/io/capawesome/capacitorjs/plugins/liveupdate/classes/results/GetBundleResult.java +0 -24
- package/ios/Plugin/Classes/Options/SetBundleOptions.swift +0 -14
- package/ios/Plugin/Classes/Results/GetBundleResult.swift +0 -16
- package/ios/Plugin/LiveUpdatePlugin.h +0 -10
- package/ios/Plugin/LiveUpdatePlugin.m +0 -27
|
@@ -6,11 +6,36 @@ import Capacitor
|
|
|
6
6
|
* here: https://capacitorjs.com/docs/plugins/ios
|
|
7
7
|
*/
|
|
8
8
|
@objc(LiveUpdatePlugin)
|
|
9
|
-
public class LiveUpdatePlugin: CAPPlugin {
|
|
9
|
+
public class LiveUpdatePlugin: CAPPlugin, CAPBridgedPlugin {
|
|
10
10
|
public static let tag = "LiveUpdate"
|
|
11
|
-
public static let version = "
|
|
11
|
+
public static let version = "7.0.0"
|
|
12
12
|
public static let userDefaultsPrefix = "CapawesomeLiveUpdate" // DO NOT CHANGE
|
|
13
13
|
|
|
14
|
+
public let identifier = "LiveUpdatePlugin"
|
|
15
|
+
public let jsName = "LiveUpdate"
|
|
16
|
+
public let pluginMethods: [CAPPluginMethod] = [
|
|
17
|
+
CAPPluginMethod(name: "deleteBundle", returnType: CAPPluginReturnPromise),
|
|
18
|
+
CAPPluginMethod(name: "downloadBundle", returnType: CAPPluginReturnPromise),
|
|
19
|
+
CAPPluginMethod(name: "fetchLatestBundle", returnType: CAPPluginReturnPromise),
|
|
20
|
+
CAPPluginMethod(name: "getBundles", returnType: CAPPluginReturnPromise),
|
|
21
|
+
CAPPluginMethod(name: "getChannel", returnType: CAPPluginReturnPromise),
|
|
22
|
+
CAPPluginMethod(name: "getCurrentBundle", returnType: CAPPluginReturnPromise),
|
|
23
|
+
CAPPluginMethod(name: "getCustomId", returnType: CAPPluginReturnPromise),
|
|
24
|
+
CAPPluginMethod(name: "getDeviceId", returnType: CAPPluginReturnPromise),
|
|
25
|
+
CAPPluginMethod(name: "getNextBundle", returnType: CAPPluginReturnPromise),
|
|
26
|
+
CAPPluginMethod(name: "getVersionCode", returnType: CAPPluginReturnPromise),
|
|
27
|
+
CAPPluginMethod(name: "getVersionName", returnType: CAPPluginReturnPromise),
|
|
28
|
+
CAPPluginMethod(name: "ready", returnType: CAPPluginReturnPromise),
|
|
29
|
+
CAPPluginMethod(name: "reload", returnType: CAPPluginReturnPromise),
|
|
30
|
+
CAPPluginMethod(name: "reset", returnType: CAPPluginReturnPromise),
|
|
31
|
+
CAPPluginMethod(name: "setChannel", returnType: CAPPluginReturnPromise),
|
|
32
|
+
CAPPluginMethod(name: "setCustomId", returnType: CAPPluginReturnPromise),
|
|
33
|
+
CAPPluginMethod(name: "setNextBundle", returnType: CAPPluginReturnPromise),
|
|
34
|
+
CAPPluginMethod(name: "sync", returnType: CAPPluginReturnPromise)
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
private let eventDownloadBundleProgess = "downloadBundleProgress"
|
|
38
|
+
|
|
14
39
|
private var config: LiveUpdateConfig?
|
|
15
40
|
private var implementation: LiveUpdate?
|
|
16
41
|
private var syncInProgress = false
|
|
@@ -45,13 +70,12 @@ public class LiveUpdatePlugin: CAPPlugin {
|
|
|
45
70
|
call.reject(CustomError.bundleIdMissing.localizedDescription)
|
|
46
71
|
return
|
|
47
72
|
}
|
|
48
|
-
let checksum = call.getString("checksum")
|
|
49
73
|
guard let url = call.getString("url") else {
|
|
50
74
|
call.reject(CustomError.urlMissing.localizedDescription)
|
|
51
75
|
return
|
|
52
76
|
}
|
|
53
77
|
|
|
54
|
-
let options = DownloadBundleOptions(artifactType: artifactType, bundleId: bundleId,
|
|
78
|
+
let options = DownloadBundleOptions(artifactType: artifactType, bundleId: bundleId, url: url)
|
|
55
79
|
|
|
56
80
|
try await implementation?.downloadBundle(options)
|
|
57
81
|
self.resolveCall(call)
|
|
@@ -75,18 +99,6 @@ public class LiveUpdatePlugin: CAPPlugin {
|
|
|
75
99
|
}
|
|
76
100
|
}
|
|
77
101
|
|
|
78
|
-
@objc func getBundle(_ call: CAPPluginCall) {
|
|
79
|
-
implementation?.getBundle(completion: { result, error in
|
|
80
|
-
if let error = error {
|
|
81
|
-
self.rejectCall(call, error)
|
|
82
|
-
return
|
|
83
|
-
}
|
|
84
|
-
if let result = result?.toJSObject() as? JSObject {
|
|
85
|
-
self.resolveCall(call, result)
|
|
86
|
-
}
|
|
87
|
-
})
|
|
88
|
-
}
|
|
89
|
-
|
|
90
102
|
@objc func getBundles(_ call: CAPPluginCall) {
|
|
91
103
|
implementation?.getBundles(completion: { result, error in
|
|
92
104
|
if let error = error {
|
|
@@ -184,8 +196,15 @@ public class LiveUpdatePlugin: CAPPlugin {
|
|
|
184
196
|
}
|
|
185
197
|
|
|
186
198
|
@objc func ready(_ call: CAPPluginCall) {
|
|
187
|
-
implementation?.ready(
|
|
188
|
-
|
|
199
|
+
implementation?.ready(completion: { result, error in
|
|
200
|
+
if let error = error {
|
|
201
|
+
self.rejectCall(call, error)
|
|
202
|
+
return
|
|
203
|
+
}
|
|
204
|
+
if let result = result?.toJSObject() as? JSObject {
|
|
205
|
+
self.resolveCall(call, result)
|
|
206
|
+
}
|
|
207
|
+
})
|
|
189
208
|
}
|
|
190
209
|
|
|
191
210
|
@objc func reload(_ call: CAPPluginCall) {
|
|
@@ -198,23 +217,6 @@ public class LiveUpdatePlugin: CAPPlugin {
|
|
|
198
217
|
resolveCall(call)
|
|
199
218
|
}
|
|
200
219
|
|
|
201
|
-
@objc func setBundle(_ call: CAPPluginCall) {
|
|
202
|
-
guard let bundleId = call.getString("bundleId") else {
|
|
203
|
-
call.reject(CustomError.bundleIdMissing.localizedDescription)
|
|
204
|
-
return
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
let options = SetBundleOptions(bundleId: bundleId)
|
|
208
|
-
|
|
209
|
-
implementation?.setBundle(options, completion: { error in
|
|
210
|
-
if let error = error {
|
|
211
|
-
self.rejectCall(call, error)
|
|
212
|
-
return
|
|
213
|
-
}
|
|
214
|
-
self.resolveCall(call)
|
|
215
|
-
})
|
|
216
|
-
}
|
|
217
|
-
|
|
218
220
|
@objc func setChannel(_ call: CAPPluginCall) {
|
|
219
221
|
let channel = call.getString("channel")
|
|
220
222
|
|
|
@@ -285,18 +287,22 @@ public class LiveUpdatePlugin: CAPPlugin {
|
|
|
285
287
|
}
|
|
286
288
|
}
|
|
287
289
|
|
|
290
|
+
func notifyDownloadBundleProgressListeners(_ event: DownloadBundleProgressEvent) {
|
|
291
|
+
if let event = event.toJSObject() as? JSObject {
|
|
292
|
+
notifyListeners(eventDownloadBundleProgess, data: event, retainUntilConsumed: false)
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
|
|
288
296
|
private func liveUpdateConfig() -> LiveUpdateConfig {
|
|
289
297
|
var config = LiveUpdateConfig()
|
|
290
298
|
|
|
291
299
|
config.appId = getConfig().getString("appId", config.appId)
|
|
292
300
|
config.autoDeleteBundles = getConfig().getBoolean("autoDeleteBundles", config.autoDeleteBundles)
|
|
293
301
|
config.defaultChannel = getConfig().getString("defaultChannel", config.defaultChannel)
|
|
294
|
-
config.enabled = getConfig().getBoolean("enabled", config.enabled)
|
|
295
302
|
config.httpTimeout = getConfig().getInt("httpTimeout", config.httpTimeout)
|
|
296
|
-
config.location = getConfig().getString("location", config.location)
|
|
297
303
|
config.publicKey = getConfig().getString("publicKey", config.publicKey)
|
|
298
304
|
config.readyTimeout = getConfig().getInt("readyTimeout", config.readyTimeout)
|
|
299
|
-
config.
|
|
305
|
+
config.serverDomain = getConfig().getString("serverDomain", config.serverDomain) ?? config.serverDomain
|
|
300
306
|
|
|
301
307
|
return config
|
|
302
308
|
}
|
|
@@ -3,7 +3,7 @@ import Foundation
|
|
|
3
3
|
public class LiveUpdatePreferences: NSObject {
|
|
4
4
|
private let channelKey = "channel" // DO NOT CHANGE
|
|
5
5
|
private let customIdKey = "customId" // DO NOT CHANGE
|
|
6
|
-
private let
|
|
6
|
+
private let previousBundleIdKey = "previousBundleIdKey" // DO NOT CHANGE
|
|
7
7
|
|
|
8
8
|
public func getChannel() -> String? {
|
|
9
9
|
return UserDefaults.standard.string(forKey: applyPrefix(to: channelKey))
|
|
@@ -13,8 +13,8 @@ public class LiveUpdatePreferences: NSObject {
|
|
|
13
13
|
return UserDefaults.standard.string(forKey: applyPrefix(to: customIdKey))
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
public func
|
|
17
|
-
return UserDefaults.standard.string(forKey: applyPrefix(to:
|
|
16
|
+
public func getPreviousBundleId() -> String? {
|
|
17
|
+
return UserDefaults.standard.string(forKey: applyPrefix(to: previousBundleIdKey))
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
public func setChannel(_ value: String?) {
|
|
@@ -31,8 +31,12 @@ public class LiveUpdatePreferences: NSObject {
|
|
|
31
31
|
UserDefaults.standard.synchronize()
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
public func
|
|
35
|
-
|
|
34
|
+
public func setPreviousBundleId(_ value: String?) {
|
|
35
|
+
if let value = value {
|
|
36
|
+
UserDefaults.standard.set(value, forKey: applyPrefix(to: previousBundleIdKey))
|
|
37
|
+
} else {
|
|
38
|
+
UserDefaults.standard.removeObject(forKey: applyPrefix(to: previousBundleIdKey))
|
|
39
|
+
}
|
|
36
40
|
UserDefaults.standard.synchronize()
|
|
37
41
|
}
|
|
38
42
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@capawesome/capacitor-live-update",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "7.0.0",
|
|
4
4
|
"description": "Capacitor plugin to update your app remotely in real-time.",
|
|
5
5
|
"main": "dist/plugin.cjs.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
"android/build.gradle",
|
|
12
12
|
"dist/",
|
|
13
13
|
"ios/Plugin/",
|
|
14
|
-
"CapawesomeCapacitorLiveUpdate.podspec"
|
|
14
|
+
"CapawesomeCapacitorLiveUpdate.podspec",
|
|
15
|
+
"Package.swift"
|
|
15
16
|
],
|
|
16
17
|
"author": "Robin Genz <mail@robingenz.dev>",
|
|
17
18
|
"license": "MIT",
|
|
@@ -56,7 +57,7 @@
|
|
|
56
57
|
"prettier": "prettier \"**/*.{css,html,ts,js,java}\"",
|
|
57
58
|
"swiftlint": "node-swiftlint",
|
|
58
59
|
"docgen": "docgen --api LiveUpdatePlugin --output-readme README.md --output-json dist/docs.json",
|
|
59
|
-
"build": "npm run clean && npm run docgen && tsc && rollup -c rollup.config.
|
|
60
|
+
"build": "npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs",
|
|
60
61
|
"clean": "rimraf ./dist",
|
|
61
62
|
"watch": "tsc --watch",
|
|
62
63
|
"version": "node scripts/sync-plugin-version.mjs",
|
|
@@ -64,26 +65,24 @@
|
|
|
64
65
|
"prepublishOnly": "npm run build"
|
|
65
66
|
},
|
|
66
67
|
"devDependencies": {
|
|
67
|
-
"@capacitor/android": "
|
|
68
|
-
"@capacitor/cli": "
|
|
69
|
-
"@capacitor/core": "
|
|
68
|
+
"@capacitor/android": "7.0.0",
|
|
69
|
+
"@capacitor/cli": "7.0.0",
|
|
70
|
+
"@capacitor/core": "7.0.0",
|
|
70
71
|
"@capacitor/docgen": "0.3.0",
|
|
71
|
-
"@capacitor/ios": "
|
|
72
|
-
"@ionic/eslint-config": "0.
|
|
73
|
-
"@ionic/
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"prettier": "2.6.
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"swiftlint": "1.0.1",
|
|
72
|
+
"@capacitor/ios": "7.0.0",
|
|
73
|
+
"@ionic/eslint-config": "0.4.0",
|
|
74
|
+
"@ionic/swiftlint-config": "2.0.0",
|
|
75
|
+
"eslint": "8.57.0",
|
|
76
|
+
"prettier": "3.4.2",
|
|
77
|
+
"prettier-plugin-java": "2.6.7",
|
|
78
|
+
"rimraf": "6.0.1",
|
|
79
|
+
"rollup": "4.30.1",
|
|
80
|
+
"swiftlint": "2.0.0",
|
|
81
81
|
"typescript": "4.1.5"
|
|
82
82
|
},
|
|
83
83
|
"peerDependencies": {
|
|
84
|
-
"@capacitor/core": "
|
|
84
|
+
"@capacitor/core": ">=7.0.0"
|
|
85
85
|
},
|
|
86
|
-
"prettier": "@ionic/prettier-config",
|
|
87
86
|
"swiftlint": "@ionic/swiftlint-config",
|
|
88
87
|
"eslintConfig": {
|
|
89
88
|
"extends": "@ionic/eslint-config/recommended"
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
package io.capawesome.capacitorjs.plugins.liveupdate.classes.options;
|
|
2
|
-
|
|
3
|
-
import androidx.annotation.NonNull;
|
|
4
|
-
|
|
5
|
-
public class SetBundleOptions {
|
|
6
|
-
|
|
7
|
-
@NonNull
|
|
8
|
-
private String bundleId;
|
|
9
|
-
|
|
10
|
-
public SetBundleOptions(@NonNull String bundleId) {
|
|
11
|
-
this.bundleId = bundleId;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
@NonNull
|
|
15
|
-
public String getBundleId() {
|
|
16
|
-
return bundleId;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
package io.capawesome.capacitorjs.plugins.liveupdate.classes.results;
|
|
2
|
-
|
|
3
|
-
import androidx.annotation.NonNull;
|
|
4
|
-
import androidx.annotation.Nullable;
|
|
5
|
-
import com.getcapacitor.JSArray;
|
|
6
|
-
import com.getcapacitor.JSObject;
|
|
7
|
-
import io.capawesome.capacitorjs.plugins.liveupdate.interfaces.Result;
|
|
8
|
-
import org.json.JSONObject;
|
|
9
|
-
|
|
10
|
-
public class GetBundleResult implements Result {
|
|
11
|
-
|
|
12
|
-
@Nullable
|
|
13
|
-
private String bundleId;
|
|
14
|
-
|
|
15
|
-
public GetBundleResult(@Nullable String bundleId) {
|
|
16
|
-
this.bundleId = bundleId;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
public JSObject toJSObject() {
|
|
20
|
-
JSObject result = new JSObject();
|
|
21
|
-
result.put("bundleId", bundleId == null ? JSONObject.NULL : bundleId);
|
|
22
|
-
return result;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import Foundation
|
|
2
|
-
import Capacitor
|
|
3
|
-
|
|
4
|
-
@objc public class GetBundleResult: NSObject, Result {
|
|
5
|
-
let bundleId: String?
|
|
6
|
-
|
|
7
|
-
init(bundleId: String?) {
|
|
8
|
-
self.bundleId = bundleId
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
public func toJSObject() -> AnyObject {
|
|
12
|
-
var result = JSObject()
|
|
13
|
-
result["bundleId"] = bundleId == nil ? NSNull() : bundleId
|
|
14
|
-
return result as AnyObject
|
|
15
|
-
}
|
|
16
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
#import <UIKit/UIKit.h>
|
|
2
|
-
|
|
3
|
-
//! Project version number for Plugin.
|
|
4
|
-
FOUNDATION_EXPORT double PluginVersionNumber;
|
|
5
|
-
|
|
6
|
-
//! Project version string for Plugin.
|
|
7
|
-
FOUNDATION_EXPORT const unsigned char PluginVersionString[];
|
|
8
|
-
|
|
9
|
-
// In this header, you should import all the public headers of your framework using statements like #import <Plugin/PublicHeader.h>
|
|
10
|
-
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
#import <Foundation/Foundation.h>
|
|
2
|
-
#import <Capacitor/Capacitor.h>
|
|
3
|
-
|
|
4
|
-
// Define the plugin using the CAP_PLUGIN Macro, and
|
|
5
|
-
// each method the plugin supports using the CAP_PLUGIN_METHOD macro.
|
|
6
|
-
CAP_PLUGIN(LiveUpdatePlugin, "LiveUpdate",
|
|
7
|
-
CAP_PLUGIN_METHOD(deleteBundle, CAPPluginReturnPromise);
|
|
8
|
-
CAP_PLUGIN_METHOD(downloadBundle, CAPPluginReturnPromise);
|
|
9
|
-
CAP_PLUGIN_METHOD(fetchLatestBundle, CAPPluginReturnPromise);
|
|
10
|
-
CAP_PLUGIN_METHOD(getBundle, CAPPluginReturnPromise);
|
|
11
|
-
CAP_PLUGIN_METHOD(getBundles, CAPPluginReturnPromise);
|
|
12
|
-
CAP_PLUGIN_METHOD(getChannel, CAPPluginReturnPromise);
|
|
13
|
-
CAP_PLUGIN_METHOD(getCurrentBundle, CAPPluginReturnPromise);
|
|
14
|
-
CAP_PLUGIN_METHOD(getCustomId, CAPPluginReturnPromise);
|
|
15
|
-
CAP_PLUGIN_METHOD(getDeviceId, CAPPluginReturnPromise);
|
|
16
|
-
CAP_PLUGIN_METHOD(getNextBundle, CAPPluginReturnPromise);
|
|
17
|
-
CAP_PLUGIN_METHOD(getVersionCode, CAPPluginReturnPromise);
|
|
18
|
-
CAP_PLUGIN_METHOD(getVersionName, CAPPluginReturnPromise);
|
|
19
|
-
CAP_PLUGIN_METHOD(ready, CAPPluginReturnPromise);
|
|
20
|
-
CAP_PLUGIN_METHOD(reload, CAPPluginReturnPromise);
|
|
21
|
-
CAP_PLUGIN_METHOD(reset, CAPPluginReturnPromise);
|
|
22
|
-
CAP_PLUGIN_METHOD(setBundle, CAPPluginReturnPromise);
|
|
23
|
-
CAP_PLUGIN_METHOD(setChannel, CAPPluginReturnPromise);
|
|
24
|
-
CAP_PLUGIN_METHOD(setCustomId, CAPPluginReturnPromise);
|
|
25
|
-
CAP_PLUGIN_METHOD(setNextBundle, CAPPluginReturnPromise);
|
|
26
|
-
CAP_PLUGIN_METHOD(sync, CAPPluginReturnPromise);
|
|
27
|
-
)
|