mirror of
https://gitcode.com/gh_mirrors/re/react-native-pushy.git
synced 2025-09-16 13:01:38 +08:00
[Fix] 更妥当的方式处理iOS更新后立即回滚的问题
This commit is contained in:
@@ -95,7 +95,6 @@ RCT_EXPORT_MODULE(RCTHotUpdate);
|
||||
|
||||
NSString *loadVersioin = curVersion;
|
||||
BOOL needRollback = (!ignoreRollback && isFirstTime == NO && isFirstLoadOK == NO) || loadVersioin.length<=0;
|
||||
ignoreRollback = true;
|
||||
if (needRollback) {
|
||||
loadVersioin = lastVersion;
|
||||
|
||||
@@ -115,7 +114,10 @@ RCT_EXPORT_MODULE(RCTHotUpdate);
|
||||
[defaults synchronize];
|
||||
// ...need clear files later
|
||||
}
|
||||
else if (isFirstTime){
|
||||
else if (isFirstTime && !ignoreRollback){
|
||||
// bundleURL may be called many times, ignore rollbacks before process restarted again.
|
||||
ignoreRollback = true;
|
||||
|
||||
NSMutableDictionary *newInfo = [[NSMutableDictionary alloc] initWithDictionary:updateInfo];
|
||||
newInfo[paramIsFirstTime] = @(NO);
|
||||
[defaults setObject:newInfo forKey:keyUpdateInfo];
|
||||
@@ -143,6 +145,10 @@ RCT_EXPORT_MODULE(RCTHotUpdate);
|
||||
return NO;
|
||||
}
|
||||
|
||||
- (void)init {
|
||||
|
||||
}
|
||||
|
||||
- (NSDictionary *)constantsToExport
|
||||
{
|
||||
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
|
||||
@@ -258,7 +264,6 @@ RCT_EXPORT_METHOD(reloadUpdate:(NSDictionary *)options)
|
||||
|
||||
// reload
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
ignoreRollback = false;
|
||||
[_bridge setValue:[[self class] bundleURL] forKey:@"bundleURL"];
|
||||
[_bridge reload];
|
||||
});
|
||||
|
Reference in New Issue
Block a user