1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

Fix: 解决RN 0.59+ iOS更新后依然提示更新(一直回滚)的问题

This commit is contained in:
DengYun 2019-08-16 13:05:29 +08:00
parent 976cc5f218
commit 56e6d790c1

@ -59,6 +59,8 @@ typedef NS_ENUM(NSInteger, HotUpdateType) {
HotUpdateTypePatchFromPpk = 3, HotUpdateTypePatchFromPpk = 3,
}; };
static BOOL ignoreRollback = false;
@implementation RCTHotUpdate { @implementation RCTHotUpdate {
RCTHotUpdateManager *_fileManager; RCTHotUpdateManager *_fileManager;
} }
@ -92,7 +94,8 @@ RCT_EXPORT_MODULE(RCTHotUpdate);
BOOL isFirstLoadOK = [updateInfo[paramIsFirstLoadOk] boolValue]; BOOL isFirstLoadOK = [updateInfo[paramIsFirstLoadOk] boolValue];
NSString *loadVersioin = curVersion; NSString *loadVersioin = curVersion;
BOOL needRollback = (isFirstTime == NO && isFirstLoadOK == NO) || loadVersioin.length<=0; BOOL needRollback = (!ignoreRollback && isFirstTime == NO && isFirstLoadOK == NO) || loadVersioin.length<=0;
ignoreRollback = true;
if (needRollback) { if (needRollback) {
loadVersioin = lastVersion; loadVersioin = lastVersion;
@ -255,6 +258,7 @@ RCT_EXPORT_METHOD(reloadUpdate:(NSDictionary *)options)
// reload // reload
dispatch_async(dispatch_get_main_queue(), ^{ dispatch_async(dispatch_get_main_queue(), ^{
ignoreRollback = false;
[_bridge setValue:[[self class] bundleURL] forKey:@"bundleURL"]; [_bridge setValue:[[self class] bundleURL] forKey:@"bundleURL"];
[_bridge reload]; [_bridge reload];
}); });