@onekeyfe/react-native-bundle-update 1.1.40 → 1.1.42

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.
@@ -241,7 +241,7 @@ object BundleUpdateStoreAndroid {
241
241
  fun getBuiltinBundleVersion(context: Context): String {
242
242
  return try {
243
243
  val appInfo = context.packageManager.getApplicationInfo(context.packageName, android.content.pm.PackageManager.GET_META_DATA)
244
- appInfo.metaData?.getString("BUNDLE_VERSION") ?: ""
244
+ appInfo.metaData?.get("BUNDLE_VERSION")?.toString() ?: ""
245
245
  } catch (e: Exception) {
246
246
  OneKeyLog.error("BundleUpdate", "Error getting builtin bundle version: ${e.message}")
247
247
  ""
@@ -1103,16 +1103,37 @@ class ReactNativeBundleUpdate : HybridReactNativeBundleUpdateSpec() {
1103
1103
  }
1104
1104
  }
1105
1105
 
1106
+ override fun clearDownload(): Promise<Unit> {
1107
+ return Promise.async {
1108
+ OneKeyLog.info("BundleUpdate", "clearDownload: clearing download directory...")
1109
+ val context = getContext()
1110
+ val downloadDir = File(BundleUpdateStoreAndroid.getDownloadBundleDir(context))
1111
+ if (downloadDir.exists()) {
1112
+ BundleUpdateStoreAndroid.deleteDir(downloadDir)
1113
+ OneKeyLog.info("BundleUpdate", "clearDownload: download directory deleted")
1114
+ } else {
1115
+ OneKeyLog.info("BundleUpdate", "clearDownload: download directory does not exist, skipping")
1116
+ }
1117
+ isDownloading.set(false)
1118
+ OneKeyLog.info("BundleUpdate", "clearDownload: completed")
1119
+ }
1120
+ }
1121
+
1106
1122
  override fun clearBundle(): Promise<Unit> {
1107
1123
  return Promise.async {
1108
- OneKeyLog.info("BundleUpdate", "clearBundle: clearing download directory...")
1124
+ OneKeyLog.info("BundleUpdate", "clearBundle: clearing download and bundle directories...")
1109
1125
  val context = getContext()
1126
+ // Clear download directory
1110
1127
  val downloadDir = File(BundleUpdateStoreAndroid.getDownloadBundleDir(context))
1111
1128
  if (downloadDir.exists()) {
1112
1129
  BundleUpdateStoreAndroid.deleteDir(downloadDir)
1113
1130
  OneKeyLog.info("BundleUpdate", "clearBundle: download directory deleted")
1114
- } else {
1115
- OneKeyLog.info("BundleUpdate", "clearBundle: download directory does not exist, skipping")
1131
+ }
1132
+ // Clear installed bundle directory
1133
+ val bundleDir = File(BundleUpdateStoreAndroid.getBundleDir(context))
1134
+ if (bundleDir.exists()) {
1135
+ BundleUpdateStoreAndroid.deleteDir(bundleDir)
1136
+ OneKeyLog.info("BundleUpdate", "clearBundle: bundle directory deleted")
1116
1137
  }
1117
1138
  isDownloading.set(false)
1118
1139
  OneKeyLog.info("BundleUpdate", "clearBundle: completed")
@@ -433,8 +433,8 @@ public class BundleUpdateStore: NSObject {
433
433
 
434
434
  let currentBuildNumber = getCurrentNativeBuildNumber()
435
435
  let prevBuildNumber = getNativeBuildNumber()
436
- if !currentBuildNumber.isEmpty && prevBuildNumber != nil && currentBuildNumber != prevBuildNumber {
437
- OneKeyLog.info("BundleUpdate", "buildNumber changed from \(prevBuildNumber ?? "") to \(currentBuildNumber), clearing bundle data")
436
+ if !currentBuildNumber.isEmpty, let prev = prevBuildNumber, !prev.isEmpty, currentBuildNumber != prev {
437
+ OneKeyLog.info("BundleUpdate", "buildNumber changed from \(prev) to \(currentBuildNumber), clearing bundle data")
438
438
  let ud = UserDefaults.standard
439
439
  if let cbv = ud.string(forKey: "currentBundleVersion") {
440
440
  deleteSignatureFile(cbv)
@@ -1052,15 +1052,38 @@ class ReactNativeBundleUpdate: HybridReactNativeBundleUpdateSpec {
1052
1052
  }
1053
1053
  }
1054
1054
 
1055
+ func clearDownload() throws -> Promise<Void> {
1056
+ return Promise.async { [weak self] in
1057
+ OneKeyLog.info("BundleUpdate", "clearDownload: clearing download directory and cancelling downloads...")
1058
+ let downloadDir = BundleUpdateStore.downloadBundleDir()
1059
+ if FileManager.default.fileExists(atPath: downloadDir) {
1060
+ try FileManager.default.removeItem(atPath: downloadDir)
1061
+ OneKeyLog.info("BundleUpdate", "clearDownload: download directory deleted")
1062
+ } else {
1063
+ OneKeyLog.info("BundleUpdate", "clearDownload: download directory does not exist, skipping")
1064
+ }
1065
+ // Cancel all in-flight downloads by invalidating the session
1066
+ self?.urlSession?.invalidateAndCancel()
1067
+ self?.urlSession = self?.createURLSession()
1068
+ self?.stateQueue.sync { self?.isDownloading = false }
1069
+ OneKeyLog.info("BundleUpdate", "clearDownload: completed")
1070
+ }
1071
+ }
1072
+
1055
1073
  func clearBundle() throws -> Promise<Void> {
1056
1074
  return Promise.async { [weak self] in
1057
- OneKeyLog.info("BundleUpdate", "clearBundle: clearing download directory and cancelling downloads...")
1075
+ OneKeyLog.info("BundleUpdate", "clearBundle: clearing download and bundle directories...")
1076
+ // Clear download directory
1058
1077
  let downloadDir = BundleUpdateStore.downloadBundleDir()
1059
1078
  if FileManager.default.fileExists(atPath: downloadDir) {
1060
1079
  try FileManager.default.removeItem(atPath: downloadDir)
1061
1080
  OneKeyLog.info("BundleUpdate", "clearBundle: download directory deleted")
1062
- } else {
1063
- OneKeyLog.info("BundleUpdate", "clearBundle: download directory does not exist, skipping")
1081
+ }
1082
+ // Clear installed bundle directory
1083
+ let bundleDir = BundleUpdateStore.bundleDir()
1084
+ if FileManager.default.fileExists(atPath: bundleDir) {
1085
+ try FileManager.default.removeItem(atPath: bundleDir)
1086
+ OneKeyLog.info("BundleUpdate", "clearBundle: bundle directory deleted")
1064
1087
  }
1065
1088
  // Cancel all in-flight downloads by invalidating the session
1066
1089
  self?.urlSession?.invalidateAndCancel()
@@ -77,6 +77,7 @@ export interface ReactNativeBundleUpdate extends HybridObject<{
77
77
  verifyBundleASC(params: BundleVerifyASCParams): Promise<void>;
78
78
  downloadBundleASC(params: BundleDownloadASCParams): Promise<void>;
79
79
  installBundle(params: BundleInstallParams): Promise<void>;
80
+ clearDownload(): Promise<void>;
80
81
  clearBundle(): Promise<void>;
81
82
  clearAllJSBundleData(): Promise<TestResult>;
82
83
  resetToBuiltInBundle(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ReactNativeBundleUpdate.nitro.d.ts","sourceRoot":"","sources":["../../../src/ReactNativeBundleUpdate.nitro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReactNativeBundleUpdate.nitro.d.ts","sourceRoot":"","sources":["../../../src/ReactNativeBundleUpdate.nitro.ts"],"names":[],"mappings":"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"}
@@ -172,6 +172,21 @@ namespace margelo::nitro::reactnativebundleupdate {
172
172
  return __promise;
173
173
  }();
174
174
  }
175
+ std::shared_ptr<Promise<void>> JHybridReactNativeBundleUpdateSpec::clearDownload() {
176
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>()>("clearDownload");
177
+ auto __result = method(_javaPart);
178
+ return [&]() {
179
+ auto __promise = Promise<void>::create();
180
+ __result->cthis()->addOnResolvedListener([=](const jni::alias_ref<jni::JObject>& /* unit */) {
181
+ __promise->resolve();
182
+ });
183
+ __result->cthis()->addOnRejectedListener([=](const jni::alias_ref<jni::JThrowable>& __throwable) {
184
+ jni::JniException __jniError(__throwable);
185
+ __promise->reject(std::make_exception_ptr(__jniError));
186
+ });
187
+ return __promise;
188
+ }();
189
+ }
175
190
  std::shared_ptr<Promise<void>> JHybridReactNativeBundleUpdateSpec::clearBundle() {
176
191
  static const auto method = javaClassStatic()->getMethod<jni::local_ref<JPromise::javaobject>()>("clearBundle");
177
192
  auto __result = method(_javaPart);
@@ -59,6 +59,7 @@ namespace margelo::nitro::reactnativebundleupdate {
59
59
  std::shared_ptr<Promise<void>> verifyBundleASC(const BundleVerifyASCParams& params) override;
60
60
  std::shared_ptr<Promise<void>> downloadBundleASC(const BundleDownloadASCParams& params) override;
61
61
  std::shared_ptr<Promise<void>> installBundle(const BundleInstallParams& params) override;
62
+ std::shared_ptr<Promise<void>> clearDownload() override;
62
63
  std::shared_ptr<Promise<void>> clearBundle() override;
63
64
  std::shared_ptr<Promise<TestResult>> clearAllJSBundleData() override;
64
65
  std::shared_ptr<Promise<void>> resetToBuiltInBundle() override;
@@ -66,6 +66,10 @@ abstract class HybridReactNativeBundleUpdateSpec: HybridObject() {
66
66
  @Keep
67
67
  abstract fun installBundle(params: BundleInstallParams): Promise<Unit>
68
68
 
69
+ @DoNotStrip
70
+ @Keep
71
+ abstract fun clearDownload(): Promise<Unit>
72
+
69
73
  @DoNotStrip
70
74
  @Keep
71
75
  abstract fun clearBundle(): Promise<Unit>
@@ -138,6 +138,14 @@ namespace margelo::nitro::reactnativebundleupdate {
138
138
  auto __value = std::move(__result.value());
139
139
  return __value;
140
140
  }
141
+ inline std::shared_ptr<Promise<void>> clearDownload() override {
142
+ auto __result = _swiftPart.clearDownload();
143
+ if (__result.hasError()) [[unlikely]] {
144
+ std::rethrow_exception(__result.error());
145
+ }
146
+ auto __value = std::move(__result.value());
147
+ return __value;
148
+ }
141
149
  inline std::shared_ptr<Promise<void>> clearBundle() override {
142
150
  auto __result = _swiftPart.clearBundle();
143
151
  if (__result.hasError()) [[unlikely]] {
@@ -19,6 +19,7 @@ public protocol HybridReactNativeBundleUpdateSpec_protocol: HybridObject {
19
19
  func verifyBundleASC(params: BundleVerifyASCParams) throws -> Promise<Void>
20
20
  func downloadBundleASC(params: BundleDownloadASCParams) throws -> Promise<Void>
21
21
  func installBundle(params: BundleInstallParams) throws -> Promise<Void>
22
+ func clearDownload() throws -> Promise<Void>
22
23
  func clearBundle() throws -> Promise<Void>
23
24
  func clearAllJSBundleData() throws -> Promise<TestResult>
24
25
  func resetToBuiltInBundle() throws -> Promise<Void>
@@ -212,6 +212,25 @@ open class HybridReactNativeBundleUpdateSpec_cxx {
212
212
  }
213
213
  }
214
214
 
215
+ @inline(__always)
216
+ public final func clearDownload() -> bridge.Result_std__shared_ptr_Promise_void___ {
217
+ do {
218
+ let __result = try self.__implementation.clearDownload()
219
+ let __resultCpp = { () -> bridge.std__shared_ptr_Promise_void__ in
220
+ let __promise = bridge.create_std__shared_ptr_Promise_void__()
221
+ let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_void__(__promise)
222
+ __result
223
+ .then({ __result in __promiseHolder.resolve() })
224
+ .catch({ __error in __promiseHolder.reject(__error.toCpp()) })
225
+ return __promise
226
+ }()
227
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__resultCpp)
228
+ } catch (let __error) {
229
+ let __exceptionPtr = __error.toCpp()
230
+ return bridge.create_Result_std__shared_ptr_Promise_void___(__exceptionPtr)
231
+ }
232
+ }
233
+
215
234
  @inline(__always)
216
235
  public final func clearBundle() -> bridge.Result_std__shared_ptr_Promise_void___ {
217
236
  do {
@@ -19,6 +19,7 @@ namespace margelo::nitro::reactnativebundleupdate {
19
19
  prototype.registerHybridMethod("verifyBundleASC", &HybridReactNativeBundleUpdateSpec::verifyBundleASC);
20
20
  prototype.registerHybridMethod("downloadBundleASC", &HybridReactNativeBundleUpdateSpec::downloadBundleASC);
21
21
  prototype.registerHybridMethod("installBundle", &HybridReactNativeBundleUpdateSpec::installBundle);
22
+ prototype.registerHybridMethod("clearDownload", &HybridReactNativeBundleUpdateSpec::clearDownload);
22
23
  prototype.registerHybridMethod("clearBundle", &HybridReactNativeBundleUpdateSpec::clearBundle);
23
24
  prototype.registerHybridMethod("clearAllJSBundleData", &HybridReactNativeBundleUpdateSpec::clearAllJSBundleData);
24
25
  prototype.registerHybridMethod("resetToBuiltInBundle", &HybridReactNativeBundleUpdateSpec::resetToBuiltInBundle);
@@ -91,6 +91,7 @@ namespace margelo::nitro::reactnativebundleupdate {
91
91
  virtual std::shared_ptr<Promise<void>> verifyBundleASC(const BundleVerifyASCParams& params) = 0;
92
92
  virtual std::shared_ptr<Promise<void>> downloadBundleASC(const BundleDownloadASCParams& params) = 0;
93
93
  virtual std::shared_ptr<Promise<void>> installBundle(const BundleInstallParams& params) = 0;
94
+ virtual std::shared_ptr<Promise<void>> clearDownload() = 0;
94
95
  virtual std::shared_ptr<Promise<void>> clearBundle() = 0;
95
96
  virtual std::shared_ptr<Promise<TestResult>> clearAllJSBundleData() = 0;
96
97
  virtual std::shared_ptr<Promise<void>> resetToBuiltInBundle() = 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onekeyfe/react-native-bundle-update",
3
- "version": "1.1.40",
3
+ "version": "1.1.42",
4
4
  "description": "react-native-bundle-update",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -95,6 +95,7 @@ export interface ReactNativeBundleUpdate
95
95
  installBundle(params: BundleInstallParams): Promise<void>;
96
96
 
97
97
  // Clear
98
+ clearDownload(): Promise<void>;
98
99
  clearBundle(): Promise<void>;
99
100
  clearAllJSBundleData(): Promise<TestResult>;
100
101
  resetToBuiltInBundle(): Promise<void>;