react-native-bspatch 4.0.2 → 4.1.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/README.md +8 -6
- package/android/src/main/java/vn/reactnativebspatch/OtaBundleResolver.kt +16 -1
- package/ios/OtaBundleResolver.swift +17 -1
- package/lib/commonjs/ota/OtaProvider.js +10 -14
- package/lib/commonjs/ota/OtaProvider.js.map +1 -1
- package/lib/commonjs/ota/types.js.map +1 -1
- package/lib/module/ota/OtaProvider.js +10 -14
- package/lib/module/ota/OtaProvider.js.map +1 -1
- package/lib/module/ota/types.js.map +1 -1
- package/lib/typescript/ota/OtaProvider.d.ts.map +1 -1
- package/lib/typescript/ota/types.d.ts +4 -0
- package/lib/typescript/ota/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/ota/OtaProvider.tsx +14 -20
- package/src/ota/types.ts +4 -0
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ Premium OTA update solution for React Native using **TurboModules** + **bsdiff b
|
|
|
7
7
|
- **Binary delta patches** — after the first OTA, clients download only the diff from the OTA bundle they already run (typically a few hundred KB)
|
|
8
8
|
- **POSIX `mmap()` Zero-Copy Engine** — patches directly in mapped pages, saving ~85–90% heap RAM
|
|
9
9
|
- **ARM NEON SIMD Fast-Path** — vectorized diff patching via Clang SIMD
|
|
10
|
-
- **Silent Background Updates** — download and apply updates completely in the background;
|
|
10
|
+
- **Silent Background Updates** — download and apply updates completely in the background; activates on next cold start or when you call `reloadBundle()`
|
|
11
11
|
- **Auto Native Version Detection** — auto-detects `versionName` (Android) and `CFBundleShortVersionString` (iOS); no manual version sync in JS
|
|
12
12
|
- **Asymmetric Cryptography (RSA & ECDSA)** — sign patches on server/CI with Private Key; client verifies with Public Key (zero secret leakage)
|
|
13
13
|
- **Shorebird-style CLI** — `patch android|ios`, release version read from the native project and confirmed with one Enter
|
|
@@ -147,7 +147,7 @@ type OtaConfig = {
|
|
|
147
147
|
* - MANUAL: call checkUpdate() / applyUpdate() manually
|
|
148
148
|
* - ON_APP_START: check and apply automatically on cold start
|
|
149
149
|
* - ON_APP_FOREGROUND: check when app returns to foreground
|
|
150
|
-
* - BACKGROUND_DOWNLOAD: download and patch in background; applies on next
|
|
150
|
+
* - BACKGROUND_DOWNLOAD: download and patch in background; applies on next cold start or reloadBundle()
|
|
151
151
|
*/
|
|
152
152
|
updateMode?: OtaUpdateMode;
|
|
153
153
|
|
|
@@ -192,7 +192,7 @@ enum OtaUpdateMode {
|
|
|
192
192
|
MANUAL = 'MANUAL', // No auto behavior
|
|
193
193
|
ON_APP_START = 'ON_APP_START', // Check + apply on every cold start
|
|
194
194
|
ON_APP_FOREGROUND = 'ON_APP_FOREGROUND', // Check when app returns to foreground
|
|
195
|
-
BACKGROUND_DOWNLOAD = 'BACKGROUND_DOWNLOAD', // Silent download; applies on next start or
|
|
195
|
+
BACKGROUND_DOWNLOAD = 'BACKGROUND_DOWNLOAD', // Silent download; applies on next cold start or reloadBundle()
|
|
196
196
|
}
|
|
197
197
|
```
|
|
198
198
|
|
|
@@ -273,13 +273,14 @@ The native `OtaBundleResolver` runs **before JS boots** on every cold start:
|
|
|
273
273
|
|
|
274
274
|
```
|
|
275
275
|
1. Read metadata.json
|
|
276
|
-
2. If lastLaunchSuccessful == false → rollback to previous version
|
|
276
|
+
2. If lastLaunchSuccessful == false → retry (see 7) or rollback to previous version
|
|
277
277
|
3. If currentVersion == baseAppVersion → use APK/IPA bundle
|
|
278
278
|
4. Otherwise → load OTA bundle from ota/v{version}/index.android.bundle (or main.jsbundle)
|
|
279
279
|
5. Unless this version is already verified: mark lastLaunchSuccessful = false (pending)
|
|
280
280
|
6. JS boots → OtaProvider renders the app → marks the running version healthy + verified
|
|
281
|
-
7. If that never happens (crash on load or first render
|
|
282
|
-
|
|
281
|
+
7. If that never happens (crash on load or first render, or the app is killed first) → next
|
|
282
|
+
boot retries the same version, up to 3 unverified launches in total; after that it rolls
|
|
283
|
+
back and records the version in failedVersions so it is never re-applied
|
|
283
284
|
8. A verified version is never rolled back later (a crash after it rendered is an app bug,
|
|
284
285
|
and killing the app during a download must not discard a good bundle)
|
|
285
286
|
```
|
|
@@ -325,6 +326,7 @@ const {
|
|
|
325
326
|
metrics, // OtaMetrics | null — timing/size data after update
|
|
326
327
|
isUpdateReady, // True if background update is downloaded and ready
|
|
327
328
|
applyUpdate, // () => Promise<void> — download and apply update immediately
|
|
329
|
+
applyVersion, // (version) => Promise<void> — download and apply a specific version from the manifest
|
|
328
330
|
resetToFactory, // () => Promise<void> — wipe OTA state, reload APK/IPA
|
|
329
331
|
markAsHealthy, // () => Promise<void> — manually mark launch OK
|
|
330
332
|
checkUpdate, // () => Promise<void> — manual update check
|
|
@@ -16,7 +16,8 @@ import java.io.File
|
|
|
16
16
|
*
|
|
17
17
|
* Lifecycle:
|
|
18
18
|
* 1. Read metadata.json
|
|
19
|
-
* 2. If lastLaunchSuccessful == false →
|
|
19
|
+
* 2. If lastLaunchSuccessful == false → retry the same version up to MAX_LAUNCH_ATTEMPTS,
|
|
20
|
+
* then rollback to previous version
|
|
20
21
|
* 3. Mark current launch as pending (lastLaunchSuccessful = false)
|
|
21
22
|
* 4. Return the bundle path (or null for APK default)
|
|
22
23
|
* 5. JS marks healthy after first render → lastLaunchSuccessful = true, verifiedVersion = current
|
|
@@ -35,6 +36,8 @@ object OtaBundleResolver {
|
|
|
35
36
|
private const val METADATA_FILE = "metadata.json"
|
|
36
37
|
private const val DEFAULT_BASE_VERSION = 1
|
|
37
38
|
private const val MAX_ROLLBACK = 3
|
|
39
|
+
/** Unverified launches allowed before rollback: a kill before first render is indistinguishable from a crash */
|
|
40
|
+
private const val MAX_LAUNCH_ATTEMPTS = 3
|
|
38
41
|
|
|
39
42
|
/** Version this process booted (set by resolve), so markAsHealthy verifies only that one */
|
|
40
43
|
@Volatile private var launchedVersion: Int? = null
|
|
@@ -84,6 +87,16 @@ object OtaBundleResolver {
|
|
|
84
87
|
val verifiedVersion = metadata.optInt("verifiedVersion", -1)
|
|
85
88
|
|
|
86
89
|
// ── Step 1: Crash detection & rollback ──────────────────────────
|
|
90
|
+
val launchAttempts = metadata.optInt("launchAttempts", 1)
|
|
91
|
+
val currentBundle = File(File(otaDir, "v${currentVersion}"), "index.android.bundle")
|
|
92
|
+
if (!lastLaunchOk && currentVersion > baseVersion && launchAttempts < MAX_LAUNCH_ATTEMPTS &&
|
|
93
|
+
currentBundle.exists()) {
|
|
94
|
+
metadata.put("launchAttempts", launchAttempts + 1)
|
|
95
|
+
writeMetadata(metadataFile, metadata)
|
|
96
|
+
Log.w(TAG, "Previous launch of V$currentVersion not verified → retry ${launchAttempts + 1}/$MAX_LAUNCH_ATTEMPTS")
|
|
97
|
+
return currentBundle.absolutePath
|
|
98
|
+
}
|
|
99
|
+
|
|
87
100
|
if (!lastLaunchOk && currentVersion > baseVersion) {
|
|
88
101
|
Log.w(TAG, "Previous launch failed! Rolling back from V$currentVersion...")
|
|
89
102
|
// Remember the crashing version so JS never re-applies it
|
|
@@ -113,6 +126,7 @@ object OtaBundleResolver {
|
|
|
113
126
|
// Mark this rollback attempt as pending
|
|
114
127
|
if (newVersion != verifiedVersion) {
|
|
115
128
|
metadata.put("lastLaunchSuccessful", false)
|
|
129
|
+
metadata.put("launchAttempts", 1)
|
|
116
130
|
writeMetadata(metadataFile, metadata)
|
|
117
131
|
}
|
|
118
132
|
|
|
@@ -139,6 +153,7 @@ object OtaBundleResolver {
|
|
|
139
153
|
// the next boot will see false and trigger rollback
|
|
140
154
|
if (currentVersion != verifiedVersion) {
|
|
141
155
|
metadata.put("lastLaunchSuccessful", false)
|
|
156
|
+
metadata.put("launchAttempts", 1)
|
|
142
157
|
writeMetadata(metadataFile, metadata)
|
|
143
158
|
}
|
|
144
159
|
|
|
@@ -10,7 +10,8 @@ import Foundation
|
|
|
10
10
|
*
|
|
11
11
|
* Lifecycle:
|
|
12
12
|
* 1. Read metadata.json
|
|
13
|
-
* 2. If lastLaunchSuccessful == false →
|
|
13
|
+
* 2. If lastLaunchSuccessful == false → retry the same version up to maxLaunchAttempts,
|
|
14
|
+
* then rollback to previous version
|
|
14
15
|
* 3. Mark current launch as pending (lastLaunchSuccessful = false)
|
|
15
16
|
* 4. Return the bundle path (or nil for IPA default)
|
|
16
17
|
* 5. JS marks healthy after first render → lastLaunchSuccessful = true, verifiedVersion = current
|
|
@@ -34,6 +35,9 @@ public class OtaBundleResolver: NSObject {
|
|
|
34
35
|
private static let metadataFile = "metadata.json"
|
|
35
36
|
public static let defaultBaseVersion = 1
|
|
36
37
|
private static let maxRollback = 3
|
|
38
|
+
/// Unverified launches allowed before rollback: a kill before first render (e.g. a
|
|
39
|
+
/// background reload, then swiped away) is indistinguishable from a crash
|
|
40
|
+
private static let maxLaunchAttempts = 3
|
|
37
41
|
private static let maxRollbackIterations = 10 // Safety limit to prevent infinite loops
|
|
38
42
|
|
|
39
43
|
/// Version this process booted (set by resolve), so markAsHealthy verifies only that one
|
|
@@ -90,6 +94,16 @@ public class OtaBundleResolver: NSObject {
|
|
|
90
94
|
let verifiedVersion = metadata["verifiedVersion"] as? Int
|
|
91
95
|
|
|
92
96
|
// ── Step 1: Crash detection & rollback ──────────────────────────
|
|
97
|
+
let launchAttempts = metadata["launchAttempts"] as? Int ?? 1
|
|
98
|
+
let currentBundle = otaDir.appendingPathComponent("v\(currentVersion)/main.jsbundle")
|
|
99
|
+
if !lastLaunchOk && currentVersion > baseVersion && launchAttempts < maxLaunchAttempts
|
|
100
|
+
&& FileManager.default.fileExists(atPath: currentBundle.path) {
|
|
101
|
+
metadata["launchAttempts"] = launchAttempts + 1
|
|
102
|
+
writeMetadata(url: metadataURL, metadata: metadata)
|
|
103
|
+
NSLog("[OtaBundleResolver] Previous launch of V\(currentVersion) not verified → retry \(launchAttempts + 1)/\(maxLaunchAttempts)")
|
|
104
|
+
return currentBundle
|
|
105
|
+
}
|
|
106
|
+
|
|
93
107
|
if !lastLaunchOk && currentVersion > baseVersion {
|
|
94
108
|
NSLog("[OtaBundleResolver] Previous launch failed! Rolling back from V\(currentVersion)...")
|
|
95
109
|
|
|
@@ -118,6 +132,7 @@ public class OtaBundleResolver: NSObject {
|
|
|
118
132
|
// Mark this rollback attempt as pending
|
|
119
133
|
if newVersion != verifiedVersion {
|
|
120
134
|
metadata["lastLaunchSuccessful"] = false
|
|
135
|
+
metadata["launchAttempts"] = 1
|
|
121
136
|
writeMetadata(url: metadataURL, metadata: metadata)
|
|
122
137
|
}
|
|
123
138
|
|
|
@@ -143,6 +158,7 @@ public class OtaBundleResolver: NSObject {
|
|
|
143
158
|
// Mark launch as pending
|
|
144
159
|
if currentVersion != verifiedVersion {
|
|
145
160
|
metadata["lastLaunchSuccessful"] = false
|
|
161
|
+
metadata["launchAttempts"] = 1
|
|
146
162
|
writeMetadata(url: metadataURL, metadata: metadata)
|
|
147
163
|
}
|
|
148
164
|
|
|
@@ -35,7 +35,6 @@ function OtaProvider({
|
|
|
35
35
|
const [isUpdateReady, setIsUpdateReady] = (0, _react.useState)(false);
|
|
36
36
|
const appState = (0, _react.useRef)(_reactNative.AppState.currentState);
|
|
37
37
|
const isCheckingRef = (0, _react.useRef)(false);
|
|
38
|
-
const pendingReloadRef = (0, _react.useRef)(false);
|
|
39
38
|
const bootstrapDone = (0, _react.useRef)(false);
|
|
40
39
|
/** Version the native resolver loaded for this JS session */
|
|
41
40
|
const runningVersionRef = (0, _react.useRef)(config.baseAppVersion);
|
|
@@ -112,15 +111,16 @@ function OtaProvider({
|
|
|
112
111
|
/**
|
|
113
112
|
* Exposed method for manual trigger
|
|
114
113
|
*/
|
|
115
|
-
const
|
|
114
|
+
const applyVersion = (0, _react.useCallback)(async targetVersion => {
|
|
116
115
|
if (!isDebugUpdateEnabled) {
|
|
117
116
|
setPendingCount(0);
|
|
118
117
|
setStatus(_types.OtaStatus.UP_TO_DATE);
|
|
119
118
|
setMessage('OTA updates are disabled while running a debug build.');
|
|
120
119
|
return;
|
|
121
120
|
}
|
|
122
|
-
await executeApplyUpdate(patches, currentVersion,
|
|
123
|
-
}, [currentVersion, executeApplyUpdate, isDebugUpdateEnabled,
|
|
121
|
+
await executeApplyUpdate(patches, currentVersion, targetVersion);
|
|
122
|
+
}, [currentVersion, executeApplyUpdate, isDebugUpdateEnabled, patches]);
|
|
123
|
+
const applyUpdate = (0, _react.useCallback)(() => applyVersion(latestVersion), [applyVersion, latestVersion]);
|
|
124
124
|
const downloadBackgroundUpdate = (0, _react.useCallback)(async (patchList, localV, targetV) => {
|
|
125
125
|
const directPatch = (0, _otaCore.selectUpdate)(patchList, localV, targetV);
|
|
126
126
|
if (!directPatch) return;
|
|
@@ -129,7 +129,6 @@ function OtaProvider({
|
|
|
129
129
|
await (0, _otaCore.applyOtaPatchInternal)(directPatch, effectiveConfig, (s, msg, m) => {
|
|
130
130
|
if (s === _types.OtaStatus.SUCCESS) {
|
|
131
131
|
setIsUpdateReady(true);
|
|
132
|
-
pendingReloadRef.current = true;
|
|
133
132
|
setStatus(_types.OtaStatus.UP_TO_DATE);
|
|
134
133
|
setMessage(`Update V${targetV} ready for next launch`);
|
|
135
134
|
if (m) setMetrics(m);
|
|
@@ -259,17 +258,13 @@ function OtaProvider({
|
|
|
259
258
|
}, []);
|
|
260
259
|
|
|
261
260
|
/**
|
|
262
|
-
* AppState listener for ON_APP_FOREGROUND mode
|
|
261
|
+
* AppState listener for ON_APP_FOREGROUND mode.
|
|
262
|
+
* A downloaded update is not reloaded on background: iOS suspends JS before the
|
|
263
|
+
* first render, so the native resolver counts the launch as failed and rolls it back.
|
|
264
|
+
* metadata already points at the new version, so the next cold start applies it
|
|
263
265
|
*/
|
|
264
266
|
(0, _react.useEffect)(() => {
|
|
265
267
|
const subscription = _reactNative.AppState.addEventListener('change', nextAppState => {
|
|
266
|
-
// When going into background: if update is downloaded and ready, reload bundle silently
|
|
267
|
-
// Only 'background', not 'inactive' (iOS fires it for Control Center, calls,
|
|
268
|
-
// Face ID). Any previous state: iOS goes active → inactive → background.
|
|
269
|
-
if (nextAppState === 'background' && pendingReloadRef.current) {
|
|
270
|
-
pendingReloadRef.current = false;
|
|
271
|
-
_NativeBsPatch.default.reloadBundle();
|
|
272
|
-
}
|
|
273
268
|
if (appState.current.match(/inactive|background/) && nextAppState === 'active' && bootstrapDone.current) {
|
|
274
269
|
const mode = config.updateMode ?? _types.OtaUpdateMode.MANUAL;
|
|
275
270
|
if (mode === _types.OtaUpdateMode.ON_APP_FOREGROUND) {
|
|
@@ -319,11 +314,12 @@ function OtaProvider({
|
|
|
319
314
|
metrics,
|
|
320
315
|
isUpdateReady,
|
|
321
316
|
applyUpdate,
|
|
317
|
+
applyVersion,
|
|
322
318
|
resetToFactory,
|
|
323
319
|
markAsHealthy,
|
|
324
320
|
checkUpdate: checkUpdates,
|
|
325
321
|
reloadBundle: () => _NativeBsPatch.default.reloadBundle()
|
|
326
|
-
}), [status, message, progress, currentVersion, latestVersion, pendingCount, isChecking, metrics, isUpdateReady, applyUpdate, resetToFactory, markAsHealthy, checkUpdates]);
|
|
322
|
+
}), [status, message, progress, currentVersion, latestVersion, pendingCount, isChecking, metrics, isUpdateReady, applyUpdate, applyVersion, resetToFactory, markAsHealthy, checkUpdates]);
|
|
327
323
|
|
|
328
324
|
// Logic to determine if we should block the UI
|
|
329
325
|
const isBlocking = (0, _react.useMemo)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_NativeBsPatch","_interopRequireDefault","_otaCore","_otaLogger","_otaMetadata","_types","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OtaContext","createContext","undefined","OtaProvider","children","config","loadingView","useLoadingView","status","setStatus","useState","OtaStatus","IDLE","message","setMessage","progress","setProgress","currentVersion","setCurrentVersion","baseAppVersion","latestVersion","setLatestVersion","pendingCount","setPendingCount","isChecking","setIsChecking","metrics","setMetrics","patches","setPatches","isInitialized","setIsInitialized","isUpdateReady","setIsUpdateReady","appState","useRef","AppState","currentState","isCheckingRef","pendingReloadRef","bootstrapDone","runningVersionRef","progressRef","isDebugUpdateEnabled","__DEV__","allowDebugUpdates","configError","useMemo","validateOtaConfig","Error","setProgressIfChanged","useCallback","nextProgress","current","getEffectiveConfig","appVersion","nativeVer","NativeBsPatch","getAppVersion","executeApplyUpdate","patchList","currentVer","targetVer","directPatch","selectUpdate","console","warn","ERROR","effectiveConfig","DOWNLOADING","applyOtaPatchInternal","s","msg","m","percent","error","applyUpdate","UP_TO_DATE","downloadBackgroundUpdate","localV","targetV","SUCCESS","autoReload","checkUpdates","CHECKING","createOtaLogger","onEvent","emit","OtaEvent","CHECK_UPDATE","remotePatches","fetchOtaManifest","metadata","loadMetadata","failed","failedVersions","platformPatches","filter","p","platform","toLowerCase","Platform","OS","includes","toVersion","maxV","length","Math","max","map","UPDATE_AVAILABLE","updateMode","OtaUpdateMode","BACKGROUND_DOWNLOAD","ON_APP_START","ON_APP_FOREGROUND","useEffect","bootstrap","readDir","DOCUMENT_DIR","then","dirs","dir","startsWith","removePath","catch","mode","MANUAL","subscription","addEventListener","nextAppState","reloadBundle","match","remove","markAsHealthy","log","MARK_HEALTHY","markHealthy","resetToFactory","APPLYING","RESET_FACTORY","exists","OTA_DIR","moveFile","Date","now","value","checkUpdate","isBlocking","healthyMarkedRef","jsx","Provider","View","style","styles","loadingContainer","jsxs","loadingCard","ActivityIndicator","size","color","Text","loadingTitle","loadingText","progressText","toFixed","useOta","context","useContext","StyleSheet","create","flex","justifyContent","alignItems","backgroundColor","paddingHorizontal","width","maxWidth","borderRadius","paddingVertical","borderWidth","borderColor","marginTop","fontSize","fontWeight","lineHeight","textAlign"],"sourceRoot":"../../../src","sources":["ota/OtaProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_NativeBsPatch","_interopRequireDefault","_otaCore","_otaLogger","_otaMetadata","_types","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OtaContext","createContext","undefined","OtaProvider","children","config","loadingView","useLoadingView","status","setStatus","useState","OtaStatus","IDLE","message","setMessage","progress","setProgress","currentVersion","setCurrentVersion","baseAppVersion","latestVersion","setLatestVersion","pendingCount","setPendingCount","isChecking","setIsChecking","metrics","setMetrics","patches","setPatches","isInitialized","setIsInitialized","isUpdateReady","setIsUpdateReady","appState","useRef","AppState","currentState","isCheckingRef","bootstrapDone","runningVersionRef","progressRef","isDebugUpdateEnabled","__DEV__","allowDebugUpdates","configError","useMemo","validateOtaConfig","Error","setProgressIfChanged","useCallback","nextProgress","current","getEffectiveConfig","appVersion","nativeVer","NativeBsPatch","getAppVersion","executeApplyUpdate","patchList","currentVer","targetVer","directPatch","selectUpdate","console","warn","ERROR","effectiveConfig","DOWNLOADING","applyOtaPatchInternal","s","msg","m","percent","error","applyVersion","targetVersion","UP_TO_DATE","applyUpdate","downloadBackgroundUpdate","localV","targetV","SUCCESS","autoReload","checkUpdates","CHECKING","createOtaLogger","onEvent","emit","OtaEvent","CHECK_UPDATE","remotePatches","fetchOtaManifest","metadata","loadMetadata","failed","failedVersions","platformPatches","filter","p","platform","toLowerCase","Platform","OS","includes","toVersion","maxV","length","Math","max","map","UPDATE_AVAILABLE","updateMode","OtaUpdateMode","BACKGROUND_DOWNLOAD","ON_APP_START","ON_APP_FOREGROUND","useEffect","bootstrap","readDir","DOCUMENT_DIR","then","dirs","dir","startsWith","removePath","catch","mode","MANUAL","subscription","addEventListener","nextAppState","match","remove","markAsHealthy","log","MARK_HEALTHY","markHealthy","resetToFactory","APPLYING","RESET_FACTORY","exists","OTA_DIR","moveFile","Date","now","reloadBundle","value","checkUpdate","isBlocking","healthyMarkedRef","jsx","Provider","View","style","styles","loadingContainer","jsxs","loadingCard","ActivityIndicator","size","color","Text","loadingTitle","loadingText","progressText","toFixed","useOta","context","useContext","StyleSheet","create","flex","justifyContent","alignItems","backgroundColor","paddingHorizontal","width","maxWidth","borderRadius","paddingVertical","borderWidth","borderColor","marginTop","fontSize","fontWeight","lineHeight","textAlign"],"sourceRoot":"../../../src","sources":["ota/OtaProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OtaUpdateMode","exports","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AAFA,IAuBYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAwCzB;AACA;AACA;AAFA,
|
|
1
|
+
{"version":3,"names":["OtaUpdateMode","exports","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AAFA,IAuBYA,aAAa,GAAAC,OAAA,CAAAD,aAAA,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAwCzB;AACA;AACA;AAFA,IA+EYE,SAAS,GAAAD,OAAA,CAAAC,SAAA,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
|
|
@@ -28,7 +28,6 @@ export function OtaProvider({
|
|
|
28
28
|
const [isUpdateReady, setIsUpdateReady] = useState(false);
|
|
29
29
|
const appState = useRef(AppState.currentState);
|
|
30
30
|
const isCheckingRef = useRef(false);
|
|
31
|
-
const pendingReloadRef = useRef(false);
|
|
32
31
|
const bootstrapDone = useRef(false);
|
|
33
32
|
/** Version the native resolver loaded for this JS session */
|
|
34
33
|
const runningVersionRef = useRef(config.baseAppVersion);
|
|
@@ -105,15 +104,16 @@ export function OtaProvider({
|
|
|
105
104
|
/**
|
|
106
105
|
* Exposed method for manual trigger
|
|
107
106
|
*/
|
|
108
|
-
const
|
|
107
|
+
const applyVersion = useCallback(async targetVersion => {
|
|
109
108
|
if (!isDebugUpdateEnabled) {
|
|
110
109
|
setPendingCount(0);
|
|
111
110
|
setStatus(OtaStatus.UP_TO_DATE);
|
|
112
111
|
setMessage('OTA updates are disabled while running a debug build.');
|
|
113
112
|
return;
|
|
114
113
|
}
|
|
115
|
-
await executeApplyUpdate(patches, currentVersion,
|
|
116
|
-
}, [currentVersion, executeApplyUpdate, isDebugUpdateEnabled,
|
|
114
|
+
await executeApplyUpdate(patches, currentVersion, targetVersion);
|
|
115
|
+
}, [currentVersion, executeApplyUpdate, isDebugUpdateEnabled, patches]);
|
|
116
|
+
const applyUpdate = useCallback(() => applyVersion(latestVersion), [applyVersion, latestVersion]);
|
|
117
117
|
const downloadBackgroundUpdate = useCallback(async (patchList, localV, targetV) => {
|
|
118
118
|
const directPatch = selectUpdate(patchList, localV, targetV);
|
|
119
119
|
if (!directPatch) return;
|
|
@@ -122,7 +122,6 @@ export function OtaProvider({
|
|
|
122
122
|
await applyOtaPatchInternal(directPatch, effectiveConfig, (s, msg, m) => {
|
|
123
123
|
if (s === OtaStatus.SUCCESS) {
|
|
124
124
|
setIsUpdateReady(true);
|
|
125
|
-
pendingReloadRef.current = true;
|
|
126
125
|
setStatus(OtaStatus.UP_TO_DATE);
|
|
127
126
|
setMessage(`Update V${targetV} ready for next launch`);
|
|
128
127
|
if (m) setMetrics(m);
|
|
@@ -252,17 +251,13 @@ export function OtaProvider({
|
|
|
252
251
|
}, []);
|
|
253
252
|
|
|
254
253
|
/**
|
|
255
|
-
* AppState listener for ON_APP_FOREGROUND mode
|
|
254
|
+
* AppState listener for ON_APP_FOREGROUND mode.
|
|
255
|
+
* A downloaded update is not reloaded on background: iOS suspends JS before the
|
|
256
|
+
* first render, so the native resolver counts the launch as failed and rolls it back.
|
|
257
|
+
* metadata already points at the new version, so the next cold start applies it
|
|
256
258
|
*/
|
|
257
259
|
useEffect(() => {
|
|
258
260
|
const subscription = AppState.addEventListener('change', nextAppState => {
|
|
259
|
-
// When going into background: if update is downloaded and ready, reload bundle silently
|
|
260
|
-
// Only 'background', not 'inactive' (iOS fires it for Control Center, calls,
|
|
261
|
-
// Face ID). Any previous state: iOS goes active → inactive → background.
|
|
262
|
-
if (nextAppState === 'background' && pendingReloadRef.current) {
|
|
263
|
-
pendingReloadRef.current = false;
|
|
264
|
-
NativeBsPatch.reloadBundle();
|
|
265
|
-
}
|
|
266
261
|
if (appState.current.match(/inactive|background/) && nextAppState === 'active' && bootstrapDone.current) {
|
|
267
262
|
const mode = config.updateMode ?? OtaUpdateMode.MANUAL;
|
|
268
263
|
if (mode === OtaUpdateMode.ON_APP_FOREGROUND) {
|
|
@@ -312,11 +307,12 @@ export function OtaProvider({
|
|
|
312
307
|
metrics,
|
|
313
308
|
isUpdateReady,
|
|
314
309
|
applyUpdate,
|
|
310
|
+
applyVersion,
|
|
315
311
|
resetToFactory,
|
|
316
312
|
markAsHealthy,
|
|
317
313
|
checkUpdate: checkUpdates,
|
|
318
314
|
reloadBundle: () => NativeBsPatch.reloadBundle()
|
|
319
|
-
}), [status, message, progress, currentVersion, latestVersion, pendingCount, isChecking, metrics, isUpdateReady, applyUpdate, resetToFactory, markAsHealthy, checkUpdates]);
|
|
315
|
+
}), [status, message, progress, currentVersion, latestVersion, pendingCount, isChecking, metrics, isUpdateReady, applyUpdate, applyVersion, resetToFactory, markAsHealthy, checkUpdates]);
|
|
320
316
|
|
|
321
317
|
// Logic to determine if we should block the UI
|
|
322
318
|
const isBlocking = useMemo(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","ActivityIndicator","AppState","Platform","StyleSheet","Text","View","NativeBsPatch","applyOtaPatchInternal","fetchOtaManifest","selectUpdate","validateOtaConfig","createOtaLogger","OtaEvent","DOCUMENT_DIR","loadMetadata","markHealthy","OTA_DIR","OtaStatus","OtaUpdateMode","jsx","_jsx","jsxs","_jsxs","OtaContext","undefined","OtaProvider","children","config","loadingView","useLoadingView","status","setStatus","IDLE","message","setMessage","progress","setProgress","currentVersion","setCurrentVersion","baseAppVersion","latestVersion","setLatestVersion","pendingCount","setPendingCount","isChecking","setIsChecking","metrics","setMetrics","patches","setPatches","isInitialized","setIsInitialized","isUpdateReady","setIsUpdateReady","appState","currentState","isCheckingRef","pendingReloadRef","bootstrapDone","runningVersionRef","progressRef","isDebugUpdateEnabled","__DEV__","allowDebugUpdates","configError","e","Error","setProgressIfChanged","nextProgress","current","getEffectiveConfig","appVersion","nativeVer","getAppVersion","executeApplyUpdate","patchList","currentVer","targetVer","directPatch","console","warn","ERROR","effectiveConfig","DOWNLOADING","s","msg","m","percent","error","applyUpdate","UP_TO_DATE","downloadBackgroundUpdate","localV","targetV","SUCCESS","autoReload","checkUpdates","CHECKING","onEvent","emit","CHECK_UPDATE","remotePatches","metadata","failed","failedVersions","platformPatches","filter","p","platform","toLowerCase","OS","includes","toVersion","maxV","length","Math","max","map","UPDATE_AVAILABLE","updateMode","BACKGROUND_DOWNLOAD","ON_APP_START","ON_APP_FOREGROUND","bootstrap","readDir","then","dirs","dir","startsWith","removePath","catch","mode","MANUAL","subscription","addEventListener","nextAppState","reloadBundle","match","remove","markAsHealthy","log","MARK_HEALTHY","resetToFactory","APPLYING","RESET_FACTORY","exists","moveFile","Date","now","value","checkUpdate","isBlocking","healthyMarkedRef","Provider","style","styles","loadingContainer","loadingCard","size","color","loadingTitle","loadingText","progressText","toFixed","useOta","context","create","flex","justifyContent","alignItems","backgroundColor","paddingHorizontal","width","maxWidth","borderRadius","paddingVertical","borderWidth","borderColor","marginTop","fontSize","fontWeight","lineHeight","textAlign"],"sourceRoot":"../../../src","sources":["ota/OtaProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","createContext","useCallback","useContext","useEffect","useMemo","useRef","useState","ActivityIndicator","AppState","Platform","StyleSheet","Text","View","NativeBsPatch","applyOtaPatchInternal","fetchOtaManifest","selectUpdate","validateOtaConfig","createOtaLogger","OtaEvent","DOCUMENT_DIR","loadMetadata","markHealthy","OTA_DIR","OtaStatus","OtaUpdateMode","jsx","_jsx","jsxs","_jsxs","OtaContext","undefined","OtaProvider","children","config","loadingView","useLoadingView","status","setStatus","IDLE","message","setMessage","progress","setProgress","currentVersion","setCurrentVersion","baseAppVersion","latestVersion","setLatestVersion","pendingCount","setPendingCount","isChecking","setIsChecking","metrics","setMetrics","patches","setPatches","isInitialized","setIsInitialized","isUpdateReady","setIsUpdateReady","appState","currentState","isCheckingRef","bootstrapDone","runningVersionRef","progressRef","isDebugUpdateEnabled","__DEV__","allowDebugUpdates","configError","e","Error","setProgressIfChanged","nextProgress","current","getEffectiveConfig","appVersion","nativeVer","getAppVersion","executeApplyUpdate","patchList","currentVer","targetVer","directPatch","console","warn","ERROR","effectiveConfig","DOWNLOADING","s","msg","m","percent","error","applyVersion","targetVersion","UP_TO_DATE","applyUpdate","downloadBackgroundUpdate","localV","targetV","SUCCESS","autoReload","checkUpdates","CHECKING","onEvent","emit","CHECK_UPDATE","remotePatches","metadata","failed","failedVersions","platformPatches","filter","p","platform","toLowerCase","OS","includes","toVersion","maxV","length","Math","max","map","UPDATE_AVAILABLE","updateMode","BACKGROUND_DOWNLOAD","ON_APP_START","ON_APP_FOREGROUND","bootstrap","readDir","then","dirs","dir","startsWith","removePath","catch","mode","MANUAL","subscription","addEventListener","nextAppState","match","remove","markAsHealthy","log","MARK_HEALTHY","resetToFactory","APPLYING","RESET_FACTORY","exists","moveFile","Date","now","reloadBundle","value","checkUpdate","isBlocking","healthyMarkedRef","Provider","style","styles","loadingContainer","loadingCard","size","color","loadingTitle","loadingText","progressText","toFixed","useOta","context","create","flex","justifyContent","alignItems","backgroundColor","paddingHorizontal","width","maxWidth","borderRadius","paddingVertical","borderWidth","borderColor","marginTop","fontSize","fontWeight","lineHeight","textAlign"],"sourceRoot":"../../../src","sources":["ota/OtaProvider.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,SAAS,EACTC,OAAO,EACPC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SACEC,iBAAiB,EACjBC,QAAQ,EAERC,QAAQ,EACRC,UAAU,EACVC,IAAI,EACJC,IAAI,QACC,cAAc;AACrB,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,SAASC,qBAAqB,EAAEC,gBAAgB,EAAEC,YAAY,EAAEC,iBAAiB,QAAQ,WAAW;AACpG,SAASC,eAAe,EAAEC,QAAQ,QAAQ,aAAa;AACvD,SAASC,YAAY,EAAEC,YAAY,EAAEC,WAAW,EAAEC,OAAO,QAAQ,eAAe;AAChF,SAKEC,SAAS,EACTC,aAAa,QACR,SAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAEjB,MAAMC,UAAU,gBAAG9B,aAAa,CAAuB+B,SAAS,CAAC;AAEjE,OAAO,SAASC,WAAWA,CAAC;EAC1BC,QAAQ;EACRC,MAAM;EACNC,WAAW;EACXC,cAAc,GAAG;AAMnB,CAAC,EAAE;EACD,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGhC,QAAQ,CAAYkB,SAAS,CAACe,IAAI,CAAC;EAC/D,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAGnC,QAAQ,CAAS,iBAAiB,CAAC;EACjE,MAAM,CAACoC,QAAQ,EAAEC,WAAW,CAAC,GAAGrC,QAAQ,CAAS,CAAC,CAAC;EAEnD,MAAM,CAACsC,cAAc,EAAEC,iBAAiB,CAAC,GAAGvC,QAAQ,CAClD4B,MAAM,CAACY,cACT,CAAC;EACD,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG1C,QAAQ,CAChD4B,MAAM,CAACY,cACT,CAAC;EACD,MAAM,CAACG,YAAY,EAAEC,eAAe,CAAC,GAAG5C,QAAQ,CAAS,CAAC,CAAC;EAC3D,MAAM,CAAC6C,UAAU,EAAEC,aAAa,CAAC,GAAG9C,QAAQ,CAAU,KAAK,CAAC;EAC5D,MAAM,CAAC+C,OAAO,EAAEC,UAAU,CAAC,GAAGhD,QAAQ,CAAoB,IAAI,CAAC;EAC/D,MAAM,CAACiD,OAAO,EAAEC,UAAU,CAAC,GAAGlD,QAAQ,CAAa,EAAE,CAAC;EACtD,MAAM,CAACmD,aAAa,EAAEC,gBAAgB,CAAC,GAAGpD,QAAQ,CAAU,KAAK,CAAC;EAClE,MAAM,CAACqD,aAAa,EAAEC,gBAAgB,CAAC,GAAGtD,QAAQ,CAAU,KAAK,CAAC;EAElE,MAAMuD,QAAQ,GAAGxD,MAAM,CAACG,QAAQ,CAACsD,YAAY,CAAC;EAC9C,MAAMC,aAAa,GAAG1D,MAAM,CAAC,KAAK,CAAC;EACnC,MAAM2D,aAAa,GAAG3D,MAAM,CAAC,KAAK,CAAC;EACnC;EACA,MAAM4D,iBAAiB,GAAG5D,MAAM,CAAC6B,MAAM,CAACY,cAAc,CAAC;EACvD,MAAMoB,WAAW,GAAG7D,MAAM,CAAC,CAAC,CAAC;EAC7B,MAAM8D,oBAAoB,GAAG,CAACC,OAAO,IAAIlC,MAAM,CAACmC,iBAAiB,KAAK,IAAI;;EAE1E;EACA;EACA,MAAMC,WAAW,GAAGlE,OAAO,CAAC,MAAM;IAChC,MAAMmE,CAAC,GAAGtD,iBAAiB,CAACiB,MAAM,CAAC;IACnC,OAAOqC,CAAC,IAAI,wCAAwCA,CAAC,EAAE;EACzD,CAAC,EAAE,CAACrC,MAAM,CAAC,CAAC;EACZ,IAAIkC,OAAO,IAAIE,WAAW,EAAE;IAC1B,MAAM,IAAIE,KAAK,CAACF,WAAW,CAAC;EAC9B;EAEA,MAAMG,oBAAoB,GAAGxE,WAAW,CAAEyE,YAAoB,IAAK;IACjE,IAAIR,WAAW,CAACS,OAAO,KAAKD,YAAY,EAAE;MACxC;IACF;IACAR,WAAW,CAACS,OAAO,GAAGD,YAAY;IAClC/B,WAAW,CAAC+B,YAAY,CAAC;EAC3B,CAAC,EAAE,EAAE,CAAC;EAEN,MAAME,kBAAkB,GAAG3E,WAAW,CAAC,YAAgC;IACrE,IAAIiC,MAAM,CAAC2C,UAAU,EAAE,OAAO3C,MAAM;IACpC,IAAI;MACF,MAAM4C,SAAS,GAAG,MAAMjE,aAAa,CAACkE,aAAa,CAAC,CAAC;MACrD,IAAI,CAACD,SAAS,EAAE;QACd,MAAM,IAAIN,KAAK,CAAC,4BAA4B,CAAC;MAC/C;MACA,OAAO;QAAE,GAAGtC,MAAM;QAAE2C,UAAU,EAAEC;MAAU,CAAC;IAC7C,CAAC,CAAC,OAAOP,CAAC,EAAE;MACV,MAAM,IAAIC,KAAK,CACb,+DAAgED,CAAC,CAAW/B,OAAO,IAAI,GACvF,+GACF,CAAC;IACH;EACF,CAAC,EAAE,CAACN,MAAM,CAAC,CAAC;;EAEZ;AACF;AACA;AACA;EACE,MAAM8C,kBAAkB,GAAG/E,WAAW,CACpC,OAAOgF,SAAqB,EAAEC,UAAkB,EAAEC,SAAiB,KAAK;IACtE,MAAMC,WAAW,GAAGpE,YAAY,CAACiE,SAAS,EAAEC,UAAU,EAAEC,SAAS,CAAC;IAElE,IAAI,CAACC,WAAW,EAAE;MAChB,IAAIhB,OAAO,EAAE;QACXiB,OAAO,CAACC,IAAI,CAAC,yCAAyC,EAAEJ,UAAU,EAAE,IAAI,EAAEC,SAAS,CAAC;MACtF;MACA7C,SAAS,CAACd,SAAS,CAAC+D,KAAK,CAAC;MAC1B9C,UAAU,CAAC,wBAAwB,CAAC;MACpC;IACF;IAEA,IAAI;MACF,MAAM+C,eAAe,GAAG,MAAMZ,kBAAkB,CAAC,CAAC;MAClDtC,SAAS,CAACd,SAAS,CAACiE,WAAW,CAAC;MAChCvB,WAAW,CAACS,OAAO,GAAG,CAAC;MACvBhC,WAAW,CAAC,CAAC,CAAC;MACd,MAAM7B,qBAAqB,CACzBsE,WAAW,EACXI,eAAe,EACf,CAACE,CAAY,EAAEC,GAAW,EAAEC,CAAc,KAAK;QAC7CnD,UAAU,CAACkD,GAAG,CAAC;QACfrD,SAAS,CAACoD,CAAC,CAAC;QACZ,IAAIE,CAAC,EAAEtC,UAAU,CAACsC,CAAC,CAAC;MACtB,CAAC,EACAC,OAAe,IAAK;QACnBpB,oBAAoB,CAACoB,OAAO,CAAC;MAC/B,CACF,CAAC;IACH,CAAC,CAAC,OAAOC,KAAK,EAAE;MACd,IAAI1B,OAAO,EAAE;QACXiB,OAAO,CAACS,KAAK,CAAC,6BAA6B,EAAEA,KAAK,CAAC;MACrD;MACAxD,SAAS,CAACd,SAAS,CAAC+D,KAAK,CAAC;MAC1B9C,UAAU,CAAC,kBAAmBqD,KAAK,CAAWtD,OAAO,EAAE,CAAC;IAC1D;EACF,CAAC,EACD,CAACoC,kBAAkB,EAAEH,oBAAoB,CAC3C,CAAC;;EAED;AACF;AACA;EACE,MAAMsB,YAAY,GAAG9F,WAAW,CAAC,MAAO+F,aAAqB,IAAK;IAChE,IAAI,CAAC7B,oBAAoB,EAAE;MACzBjB,eAAe,CAAC,CAAC,CAAC;MAClBZ,SAAS,CAACd,SAAS,CAACyE,UAAU,CAAC;MAC/BxD,UAAU,CAAC,uDAAuD,CAAC;MACnE;IACF;IACA,MAAMuC,kBAAkB,CAACzB,OAAO,EAAEX,cAAc,EAAEoD,aAAa,CAAC;EAClE,CAAC,EAAE,CAACpD,cAAc,EAAEoC,kBAAkB,EAAEb,oBAAoB,EAAEZ,OAAO,CAAC,CAAC;EAEvE,MAAM2C,WAAW,GAAGjG,WAAW,CAC7B,MAAM8F,YAAY,CAAChD,aAAa,CAAC,EACjC,CAACgD,YAAY,EAAEhD,aAAa,CAC9B,CAAC;EAED,MAAMoD,wBAAwB,GAAGlG,WAAW,CAC1C,OACEgF,SAAqB,EACrBmB,MAAc,EACdC,OAAe,KACZ;IACH,MAAMjB,WAAW,GAAGpE,YAAY,CAACiE,SAAS,EAAEmB,MAAM,EAAEC,OAAO,CAAC;IAC5D,IAAI,CAACjB,WAAW,EAAE;IAElB,IAAI;MACF,MAAMI,eAAe,GAAG,MAAMZ,kBAAkB,CAAC,CAAC;MAClD,MAAM9D,qBAAqB,CACzBsE,WAAW,EACXI,eAAe,EACf,CAACE,CAAY,EAAEC,GAAW,EAAEC,CAAc,KAAK;QAC7C,IAAIF,CAAC,KAAKlE,SAAS,CAAC8E,OAAO,EAAE;UAC3B1C,gBAAgB,CAAC,IAAI,CAAC;UACtBtB,SAAS,CAACd,SAAS,CAACyE,UAAU,CAAC;UAC/BxD,UAAU,CAAC,WAAW4D,OAAO,wBAAwB,CAAC;UACtD,IAAIT,CAAC,EAAEtC,UAAU,CAACsC,CAAC,CAAC;QACtB;MACF,CAAC,EACD,MAAM,CAAC,CAAC;MAAE;MACV;QAAEW,UAAU,EAAE;MAAM,CAAC,CAAE;MACzB,CAAC;IACH,CAAC,CAAC,OAAOhC,CAAC,EAAE;MACV,IAAIH,OAAO,EAAE;QACXiB,OAAO,CAACC,IAAI,CAAC,gDAAgD,EAAEf,CAAC,CAAC;MACnE;IACF;EACF,CAAC,EACD,CAACK,kBAAkB,CACrB,CAAC;;EAED;AACF;AACA;AACA;EACE,MAAM4B,YAAY,GAAGvG,WAAW,CAAC,YAAY;IAC3C,IAAI8D,aAAa,CAACY,OAAO,IAAIL,WAAW,EAAE;IAC1C,IAAI,CAACH,oBAAoB,EAAE;MACzBjB,eAAe,CAAC,CAAC,CAAC;MAClBE,aAAa,CAAC,KAAK,CAAC;MACpBd,SAAS,CAACd,SAAS,CAACyE,UAAU,CAAC;MAC/BxD,UAAU,CAAC,uDAAuD,CAAC;MACnE;IACF;IACAsB,aAAa,CAACY,OAAO,GAAG,IAAI;IAC5BvB,aAAa,CAAC,IAAI,CAAC;IACnBd,SAAS,CAACd,SAAS,CAACiF,QAAQ,CAAC;IAC7BhE,UAAU,CAAC,yBAAyB,CAAC;IAErC,IAAI;MACF,MAAM+C,eAAe,GAAG,MAAMZ,kBAAkB,CAAC,CAAC;MAClD1D,eAAe,CAACsE,eAAe,CAACkB,OAAO,CAAC,CAACC,IAAI,CAACxF,QAAQ,CAACyF,YAAY,CAAC;MACpE,MAAMC,aAAa,GAAG,MAAM9F,gBAAgB,CAACyE,eAAe,CAAC;MAC7D,MAAMsB,QAAQ,GAAG,MAAMzF,YAAY,CAACa,MAAM,CAACY,cAAc,CAAC;MAC1D,MAAMsD,MAAM,GAAGU,QAAQ,CAAClE,cAAc;;MAEtC;MACA;MACA,MAAMmE,MAAM,GAAGD,QAAQ,CAACE,cAAc,IAAI,EAAE;MAC5C,MAAMC,eAAe,GAAGJ,aAAa,CAACK,MAAM,CAC1CC,CAAC,IACC,CAAC,CAACA,CAAC,CAACC,QAAQ,IAAID,CAAC,CAACC,QAAQ,CAACC,WAAW,CAAC,CAAC,KAAK5G,QAAQ,CAAC6G,EAAE,KACxD,CAACP,MAAM,CAACQ,QAAQ,CAACJ,CAAC,CAACK,SAAS,CAChC,CAAC;MAED,MAAMC,IAAI,GACRR,eAAe,CAACS,MAAM,GAAG,CAAC,GACtBC,IAAI,CAACC,GAAG,CAAC,GAAGX,eAAe,CAACY,GAAG,CAACV,CAAC,IAAIA,CAAC,CAACK,SAAS,CAAC,CAAC,GAClDpB,MAAM;MAEZ5C,UAAU,CAACyD,eAAe,CAAC;MAC3BpE,iBAAiB,CAACuD,MAAM,CAAC;MACzBpD,gBAAgB,CAACyE,IAAI,CAAC;MAEtB,IAAIA,IAAI,GAAGrB,MAAM,EAAE;QACjBlD,eAAe,CAAC,CAAC,CAAC;QAClBT,UAAU,CAAC,sBAAsB2D,MAAM,OAAOqB,IAAI,EAAE,CAAC;QACrDnF,SAAS,CAACd,SAAS,CAACsG,gBAAgB,CAAC;;QAErC;QACA,IAAI5F,MAAM,CAAC6F,UAAU,KAAKtG,aAAa,CAACuG,mBAAmB,EAAE;UAC3D7B,wBAAwB,CAACc,eAAe,EAAEb,MAAM,EAAEqB,IAAI,CAAC;QACzD,CAAC,MAAM,IACLvF,MAAM,CAAC6F,UAAU,KAAKtG,aAAa,CAACwG,YAAY,IAChD/F,MAAM,CAAC6F,UAAU,KAAKtG,aAAa,CAACyG,iBAAiB,EACrD;UACA;UACA,MAAMlD,kBAAkB,CAACiC,eAAe,EAAEb,MAAM,EAAEqB,IAAI,CAAC;QACzD;MACF,CAAC,MAAM;QACLvE,eAAe,CAAC,CAAC,CAAC;QAClBT,UAAU,CAAC,yBAAyB2D,MAAM,GAAG,CAAC;QAC9C9D,SAAS,CAACd,SAAS,CAACyE,UAAU,CAAC;MACjC;IACF,CAAC,CAAC,OAAOH,KAAK,EAAE;MACdrD,UAAU,CAAC,iBAAkBqD,KAAK,CAAWtD,OAAO,EAAE,CAAC;MACvDF,SAAS,CAACd,SAAS,CAAC+D,KAAK,CAAC;IAC5B,CAAC,SAAS;MACRxB,aAAa,CAACY,OAAO,GAAG,KAAK;MAC7BvB,aAAa,CAAC,KAAK,CAAC;IACtB;EACF,CAAC,EAAE,CAAClB,MAAM,EAAEoC,WAAW,EAAEU,kBAAkB,EAAEb,oBAAoB,EAAEgC,wBAAwB,EAAEvB,kBAAkB,CAAC,CAAC;;EAEjH;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEzE,SAAS,CAAC,MAAM;IACd,MAAMgI,SAAS,GAAG,MAAAA,CAAA,KAAY;MAC5B;MACAtH,aAAa,CAACuH,OAAO,CAAChH,YAAY,CAAC,CAACiH,IAAI,CAACC,IAAI,IAAI;QAC/C,KAAK,MAAMC,GAAG,IAAID,IAAI,EAAE;UACtB,IAAIC,GAAG,CAACC,UAAU,CAAC,YAAY,CAAC,EAAE;YAChC3H,aAAa,CAAC4H,UAAU,CAAC,GAAGrH,YAAY,IAAImH,GAAG,EAAE,CAAC,CAACG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;UACpE;QACF;MACF,CAAC,CAAC,CAACA,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;MAElB,MAAM5B,QAAQ,GAAG,MAAMzF,YAAY,CAACa,MAAM,CAACY,cAAc,CAAC;MAC1DmB,iBAAiB,CAACU,OAAO,GAAGmC,QAAQ,CAAClE,cAAc;;MAEnD;MACAC,iBAAiB,CAACiE,QAAQ,CAAClE,cAAc,CAAC;;MAE1C;MACA,IAAI0B,WAAW,EAAE;QACfe,OAAO,CAACS,KAAK,CAACxB,WAAW,CAAC;QAC1B7B,UAAU,CAAC6B,WAAW,CAAC;QACvBhC,SAAS,CAACd,SAAS,CAAC+D,KAAK,CAAC;QAC1B;MACF;MACAvB,aAAa,CAACW,OAAO,GAAG,IAAI;;MAE5B;MACA,MAAMgE,IAAI,GAAGzG,MAAM,CAAC6F,UAAU,IAAItG,aAAa,CAACmH,MAAM;MACtD,IACED,IAAI,KAAKlH,aAAa,CAACwG,YAAY,IACnCU,IAAI,KAAKlH,aAAa,CAACuG,mBAAmB,EAC1C;QACAxB,YAAY,CAAC,CAAC;MAChB,CAAC,MAAM;QACL/D,UAAU,CAAC,WAAWqE,QAAQ,CAAClE,cAAc,GAAG,CAAC;QACjDN,SAAS,CAACd,SAAS,CAACyE,UAAU,CAAC;MACjC;IACF,CAAC;IAEDkC,SAAS,CAAC,CAAC,CAACE,IAAI,CAAC,MAAM3E,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAACgF,KAAK,CAAC,MAAM;MACzD;MACA;MACA;IAAA,CACD,CAAC;IACF;EACF,CAAC,EAAE,EAAE,CAAC;;EAEN;AACF;AACA;AACA;AACA;AACA;EACEvI,SAAS,CAAC,MAAM;IACd,MAAM0I,YAAY,GAAGrI,QAAQ,CAACsI,gBAAgB,CAC5C,QAAQ,EACPC,YAA4B,IAAK;MAChC,IACElF,QAAQ,CAACc,OAAO,CAACqE,KAAK,CAAC,qBAAqB,CAAC,IAC7CD,YAAY,KAAK,QAAQ,IACzB/E,aAAa,CAACW,OAAO,EACrB;QACA,MAAMgE,IAAI,GAAGzG,MAAM,CAAC6F,UAAU,IAAItG,aAAa,CAACmH,MAAM;QACtD,IAAID,IAAI,KAAKlH,aAAa,CAACyG,iBAAiB,EAAE;UAC5C1B,YAAY,CAAC,CAAC;QAChB;MACF;MACA3C,QAAQ,CAACc,OAAO,GAAGoE,YAAY;IACjC,CACF,CAAC;IAED,OAAO,MAAM;MACXF,YAAY,CAACI,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,CAAC/G,MAAM,CAAC6F,UAAU,EAAEvB,YAAY,CAAC,CAAC;EAErC,MAAM0C,aAAa,GAAGjJ,WAAW,CAAC,YAAY;IAC5C,MAAMkJ,GAAG,GAAGjI,eAAe,CAACgB,MAAM,CAACwE,OAAO,CAAC;IAC3CyC,GAAG,CAACxC,IAAI,CAACxF,QAAQ,CAACiI,YAAY,CAAC;IAC/B,MAAMvE,UAAU,GAAG,MAAMhE,aAAa,CAACkE,aAAa,CAAC,CAAC,CAAC2D,KAAK,CAAC,MAAMxG,MAAM,CAAC2C,UAAU,CAAC;IACrF,MAAMvD,WAAW,CAACY,MAAM,CAACY,cAAc,EAAEmB,iBAAiB,CAACU,OAAO,EAAEE,UAAU,CAAC;EACjF,CAAC,EAAE,CAAC3C,MAAM,CAAC,CAAC;EAEZ,MAAMmH,cAAc,GAAGpJ,WAAW,CAAC,YAAY;IAC7C,MAAMkJ,GAAG,GAAGjI,eAAe,CAACgB,MAAM,CAACwE,OAAO,CAAC;IAC3C,IAAI;MACFpE,SAAS,CAACd,SAAS,CAAC8H,QAAQ,CAAC;MAC7B7G,UAAU,CAAC,0BAA0B,CAAC;MACtC0G,GAAG,CAACxC,IAAI,CAACxF,QAAQ,CAACoI,aAAa,CAAC;MAChC,IAAI,MAAM1I,aAAa,CAAC2I,MAAM,CAACjI,OAAO,CAAC,EAAE;QACvC;QACA,MAAMV,aAAa,CAAC4I,QAAQ,CAAClI,OAAO,EAAE,GAAGH,YAAY,cAAcsI,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE,CAAC;QAChF;MACF;MACAlH,UAAU,CAAC,0CAA0C,CAAC;MACtD5B,aAAa,CAAC+I,YAAY,CAAC,CAAC;IAC9B,CAAC,CAAC,OAAO9D,KAAK,EAAE;MACdxD,SAAS,CAACd,SAAS,CAAC+D,KAAK,CAAC;MAC1B9C,UAAU,CAAC,iBAAkBqD,KAAK,CAAWtD,OAAO,EAAE,CAAC;IACzD;EACF,CAAC,EAAE,CAACN,MAAM,CAAC,CAAC;;EAEZ;EACA,MAAM2H,KAAK,GAAGzJ,OAAO,CAAW,OAAO;IACrCiC,MAAM;IACNG,OAAO;IACPE,QAAQ;IACRE,cAAc;IACdG,aAAa;IACbE,YAAY;IACZE,UAAU;IACVE,OAAO;IACPM,aAAa;IACbuC,WAAW;IACXH,YAAY;IACZsD,cAAc;IACdH,aAAa;IACbY,WAAW,EAAEtD,YAAY;IACzBoD,YAAY,EAAEA,CAAA,KAAM/I,aAAa,CAAC+I,YAAY,CAAC;EACjD,CAAC,CAAC,EAAE,CACFvH,MAAM,EACNG,OAAO,EACPE,QAAQ,EACRE,cAAc,EACdG,aAAa,EACbE,YAAY,EACZE,UAAU,EACVE,OAAO,EACPM,aAAa,EACbuC,WAAW,EACXH,YAAY,EACZsD,cAAc,EACdH,aAAa,EACb1C,YAAY,CACb,CAAC;;EAEF;EACA,MAAMuD,UAAU,GAAG3J,OAAO,CAAC,MAAM;IAC/B,OACEgC,cAAc,KACb,CAACqB,aAAa,IACZvB,MAAM,CAAC6F,UAAU,KAAKtG,aAAa,CAACwG,YAAY,KAC9C5F,MAAM,KAAKb,SAAS,CAACe,IAAI,IACxBF,MAAM,KAAKb,SAAS,CAACiF,QAAQ,IAC7BpE,MAAM,KAAKb,SAAS,CAACiE,WAAW,IAChCpD,MAAM,KAAKb,SAAS,CAAC8H,QAAQ,IAC7BjH,MAAM,KAAKb,SAAS,CAACsG,gBAAgB,CAAE,CAAC;EAElD,CAAC,EAAE,CAAC1F,cAAc,EAAEqB,aAAa,EAAEvB,MAAM,CAAC6F,UAAU,EAAE1F,MAAM,CAAC,CAAC;;EAE9D;EACA;EACA;EACA,MAAM2H,gBAAgB,GAAG3J,MAAM,CAAC,KAAK,CAAC;EACtCF,SAAS,CAAC,MAAM;IACd,IAAI4J,UAAU,IAAI,CAACtG,aAAa,IAAIuG,gBAAgB,CAACrF,OAAO,EAAE;IAC9DqF,gBAAgB,CAACrF,OAAO,GAAG,IAAI;IAC/BuE,aAAa,CAAC,CAAC,CAACR,KAAK,CAACnE,CAAC,IAAIc,OAAO,CAACC,IAAI,CAAC,qCAAqC,EAAEf,CAAC,CAAC,CAAC;IAClF;EACF,CAAC,EAAE,CAACwF,UAAU,EAAEtG,aAAa,CAAC,CAAC;EAE/B,oBACE9B,IAAA,CAACG,UAAU,CAACmI,QAAQ;IAACJ,KAAK,EAAEA,KAAM;IAAA5H,QAAA,EAC/B,CAAC8H,UAAU,GACV9H,QAAQ,GACNE,WAAW,KAAKJ,SAAS,GAC3BI,WAAW,gBAEXR,IAAA,CAACf,IAAI;MAACsJ,KAAK,EAAEC,MAAM,CAACC,gBAAiB;MAAAnI,QAAA,eACnCJ,KAAA,CAACjB,IAAI;QAACsJ,KAAK,EAAEC,MAAM,CAACE,WAAY;QAAApI,QAAA,gBAC9BN,IAAA,CAACpB,iBAAiB;UAAC+J,IAAI,EAAC,OAAO;UAACC,KAAK,EAAC;QAAS,CAAE,CAAC,eAClD5I,IAAA,CAAChB,IAAI;UAACuJ,KAAK,EAAEC,MAAM,CAACK,YAAa;UAAAvI,QAAA,EAAC;QAAW,CAAM,CAAC,eACpDN,IAAA,CAAChB,IAAI;UAACuJ,KAAK,EAAEC,MAAM,CAACM,WAAY;UAAAxI,QAAA,EAAEO;QAAO,CAAO,CAAC,EAChDH,MAAM,KAAKb,SAAS,CAACiE,WAAW,IAAIpD,MAAM,KAAKb,SAAS,CAAC8H,QAAQ,gBAChEzH,KAAA,CAAClB,IAAI;UAACuJ,KAAK,EAAEC,MAAM,CAACO,YAAa;UAAAzI,QAAA,GAAES,QAAQ,CAACiI,OAAO,CAAC,CAAC,CAAC,EAAC,GAAC;QAAA,CAAM,CAAC,GAC7D,IAAI;MAAA,CACJ;IAAC,CACH;EACP,CACkB,CAAC;AAE1B;AAEA,OAAO,SAASC,MAAMA,CAAA,EAAG;EACvB,MAAMC,OAAO,GAAG3K,UAAU,CAAC4B,UAAU,CAAC;EACtC,IAAI+I,OAAO,KAAK9I,SAAS,EAAE;IACzB,MAAM,IAAIyC,KAAK,CAAC,2CAA2C,CAAC;EAC9D;EACA,OAAOqG,OAAO;AAChB;AAEA,MAAMV,MAAM,GAAGzJ,UAAU,CAACoK,MAAM,CAAC;EAC/BV,gBAAgB,EAAE;IAChBW,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,eAAe,EAAE,SAAS;IAC1BC,iBAAiB,EAAE;EACrB,CAAC;EACDd,WAAW,EAAE;IACXe,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE,GAAG;IACbH,eAAe,EAAE,SAAS;IAC1BI,YAAY,EAAE,EAAE;IAChBH,iBAAiB,EAAE,EAAE;IACrBI,eAAe,EAAE,EAAE;IACnBN,UAAU,EAAE,QAAQ;IACpBO,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE;EACf,CAAC;EACDjB,YAAY,EAAE;IACZkB,SAAS,EAAE,EAAE;IACbnB,KAAK,EAAE,SAAS;IAChBoB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACd,CAAC;EACDnB,WAAW,EAAE;IACXiB,SAAS,EAAE,CAAC;IACZnB,KAAK,EAAE,SAAS;IAChBoB,QAAQ,EAAE,EAAE;IACZE,UAAU,EAAE,EAAE;IACdC,SAAS,EAAE;EACb,CAAC;EACDpB,YAAY,EAAE;IACZgB,SAAS,EAAE,EAAE;IACbnB,KAAK,EAAE,SAAS;IAChBoB,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OtaUpdateMode","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;AAAA;AACA;AACA;;AAqBA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;;AAwCzB;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["OtaUpdateMode","OtaStatus"],"sourceRoot":"../../../src","sources":["ota/types.ts"],"mappings":";;AAAA;AACA;AACA;;AAqBA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;;AAwCzB;AACA;AACA;;AA6EA,WAAYC,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtaProvider.d.ts","sourceRoot":"","sources":["../../../src/ota/OtaProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAcf,OAAO,EACL,SAAS,EAGT,QAAQ,EAGT,MAAM,SAAS,CAAC;AAIjB,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,MAAM,EACN,WAAW,EACX,cAAqB,GACtB,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,
|
|
1
|
+
{"version":3,"file":"OtaProvider.d.ts","sourceRoot":"","sources":["../../../src/ota/OtaProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAcf,OAAO,EACL,SAAS,EAGT,QAAQ,EAGT,MAAM,SAAS,CAAC;AAIjB,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,MAAM,EACN,WAAW,EACX,cAAqB,GACtB,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,qBAqaA;AAED,wBAAgB,MAAM,aAMrB"}
|
|
@@ -76,6 +76,8 @@ export type OtaMetadata = {
|
|
|
76
76
|
failedVersions?: number[];
|
|
77
77
|
/** Last version that launched and rendered successfully; the native resolver never rolls it back */
|
|
78
78
|
verifiedVersion?: number;
|
|
79
|
+
/** Unverified launches of currentVersion so far; native rolls back once it reaches the limit (3) */
|
|
80
|
+
launchAttempts?: number;
|
|
79
81
|
};
|
|
80
82
|
export type OtaMetrics = {
|
|
81
83
|
patchSizeKB: number;
|
|
@@ -145,6 +147,8 @@ export type OtaState = {
|
|
|
145
147
|
/** True if a background update has been downloaded and prepared silently */
|
|
146
148
|
isUpdateReady: boolean;
|
|
147
149
|
applyUpdate: () => Promise<void>;
|
|
150
|
+
/** Installs and reloads `version` from the last checked manifest (full bundle, or a patch from the current version) */
|
|
151
|
+
applyVersion: (version: number) => Promise<void>;
|
|
148
152
|
resetToFactory: () => Promise<void>;
|
|
149
153
|
markAsHealthy: () => Promise<void>;
|
|
150
154
|
checkUpdate: () => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ota/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEtD;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvE;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9E;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;CAC9C;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,yGAAyG;IACzG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oGAAoG;IACpG,eAAe,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ota/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEtD;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvE;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC9E;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;CAC9C;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACnB,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,4FAA4F;IAC5F,YAAY,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,yGAAyG;IACzG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,oGAAoG;IACpG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oGAAoG;IACpG,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACpB,yFAAyF;IACzF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,gCAAgC;IAChC,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B,yDAAyD;IACzD,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,YAAY,CAAC,EAAE;QACX,qEAAqE;QACrE,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,iFAAiF;IACjF,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAChC,CAAC;AAEF,oBAAY,SAAS;IACjB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,cAAc,mBAAmB;IACjC,OAAO,YAAY;IACnB,KAAK,UAAU;CAClB;AAED,MAAM,MAAM,QAAQ,GAAG;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,4EAA4E;IAC5E,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,uHAAuH;IACvH,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,+EAA+E;IAC/E,YAAY,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAC"}
|
package/package.json
CHANGED
package/src/ota/OtaProvider.tsx
CHANGED
|
@@ -61,7 +61,6 @@ export function OtaProvider({
|
|
|
61
61
|
|
|
62
62
|
const appState = useRef(AppState.currentState);
|
|
63
63
|
const isCheckingRef = useRef(false);
|
|
64
|
-
const pendingReloadRef = useRef(false);
|
|
65
64
|
const bootstrapDone = useRef(false);
|
|
66
65
|
/** Version the native resolver loaded for this JS session */
|
|
67
66
|
const runningVersionRef = useRef(config.baseAppVersion);
|
|
@@ -150,21 +149,20 @@ export function OtaProvider({
|
|
|
150
149
|
/**
|
|
151
150
|
* Exposed method for manual trigger
|
|
152
151
|
*/
|
|
153
|
-
const
|
|
152
|
+
const applyVersion = useCallback(async (targetVersion: number) => {
|
|
154
153
|
if (!isDebugUpdateEnabled) {
|
|
155
154
|
setPendingCount(0);
|
|
156
155
|
setStatus(OtaStatus.UP_TO_DATE);
|
|
157
156
|
setMessage('OTA updates are disabled while running a debug build.');
|
|
158
157
|
return;
|
|
159
158
|
}
|
|
160
|
-
await executeApplyUpdate(patches, currentVersion,
|
|
161
|
-
}, [
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
latestVersion,
|
|
166
|
-
|
|
167
|
-
]);
|
|
159
|
+
await executeApplyUpdate(patches, currentVersion, targetVersion);
|
|
160
|
+
}, [currentVersion, executeApplyUpdate, isDebugUpdateEnabled, patches]);
|
|
161
|
+
|
|
162
|
+
const applyUpdate = useCallback(
|
|
163
|
+
() => applyVersion(latestVersion),
|
|
164
|
+
[applyVersion, latestVersion],
|
|
165
|
+
);
|
|
168
166
|
|
|
169
167
|
const downloadBackgroundUpdate = useCallback(
|
|
170
168
|
async (
|
|
@@ -183,7 +181,6 @@ export function OtaProvider({
|
|
|
183
181
|
(s: OtaStatus, msg: string, m?: OtaMetrics) => {
|
|
184
182
|
if (s === OtaStatus.SUCCESS) {
|
|
185
183
|
setIsUpdateReady(true);
|
|
186
|
-
pendingReloadRef.current = true;
|
|
187
184
|
setStatus(OtaStatus.UP_TO_DATE);
|
|
188
185
|
setMessage(`Update V${targetV} ready for next launch`);
|
|
189
186
|
if (m) setMetrics(m);
|
|
@@ -332,20 +329,15 @@ export function OtaProvider({
|
|
|
332
329
|
}, []);
|
|
333
330
|
|
|
334
331
|
/**
|
|
335
|
-
* AppState listener for ON_APP_FOREGROUND mode
|
|
332
|
+
* AppState listener for ON_APP_FOREGROUND mode.
|
|
333
|
+
* A downloaded update is not reloaded on background: iOS suspends JS before the
|
|
334
|
+
* first render, so the native resolver counts the launch as failed and rolls it back.
|
|
335
|
+
* metadata already points at the new version, so the next cold start applies it
|
|
336
336
|
*/
|
|
337
337
|
useEffect(() => {
|
|
338
338
|
const subscription = AppState.addEventListener(
|
|
339
339
|
'change',
|
|
340
340
|
(nextAppState: AppStateStatus) => {
|
|
341
|
-
// When going into background: if update is downloaded and ready, reload bundle silently
|
|
342
|
-
// Only 'background', not 'inactive' (iOS fires it for Control Center, calls,
|
|
343
|
-
// Face ID). Any previous state: iOS goes active → inactive → background.
|
|
344
|
-
if (nextAppState === 'background' && pendingReloadRef.current) {
|
|
345
|
-
pendingReloadRef.current = false;
|
|
346
|
-
NativeBsPatch.reloadBundle();
|
|
347
|
-
}
|
|
348
|
-
|
|
349
341
|
if (
|
|
350
342
|
appState.current.match(/inactive|background/) &&
|
|
351
343
|
nextAppState === 'active' &&
|
|
@@ -403,6 +395,7 @@ export function OtaProvider({
|
|
|
403
395
|
metrics,
|
|
404
396
|
isUpdateReady,
|
|
405
397
|
applyUpdate,
|
|
398
|
+
applyVersion,
|
|
406
399
|
resetToFactory,
|
|
407
400
|
markAsHealthy,
|
|
408
401
|
checkUpdate: checkUpdates,
|
|
@@ -418,6 +411,7 @@ export function OtaProvider({
|
|
|
418
411
|
metrics,
|
|
419
412
|
isUpdateReady,
|
|
420
413
|
applyUpdate,
|
|
414
|
+
applyVersion,
|
|
421
415
|
resetToFactory,
|
|
422
416
|
markAsHealthy,
|
|
423
417
|
checkUpdates,
|
package/src/ota/types.ts
CHANGED
|
@@ -84,6 +84,8 @@ export type OtaMetadata = {
|
|
|
84
84
|
failedVersions?: number[];
|
|
85
85
|
/** Last version that launched and rendered successfully; the native resolver never rolls it back */
|
|
86
86
|
verifiedVersion?: number;
|
|
87
|
+
/** Unverified launches of currentVersion so far; native rolls back once it reaches the limit (3) */
|
|
88
|
+
launchAttempts?: number;
|
|
87
89
|
};
|
|
88
90
|
|
|
89
91
|
export type OtaMetrics = {
|
|
@@ -162,6 +164,8 @@ export type OtaState = {
|
|
|
162
164
|
/** True if a background update has been downloaded and prepared silently */
|
|
163
165
|
isUpdateReady: boolean;
|
|
164
166
|
applyUpdate: () => Promise<void>;
|
|
167
|
+
/** Installs and reloads `version` from the last checked manifest (full bundle, or a patch from the current version) */
|
|
168
|
+
applyVersion: (version: number) => Promise<void>;
|
|
165
169
|
resetToFactory: () => Promise<void>;
|
|
166
170
|
markAsHealthy: () => Promise<void>;
|
|
167
171
|
checkUpdate: () => Promise<void>;
|