diff --git a/ios/RCTHotUpdate/RCTHotUpdate.m b/ios/RCTHotUpdate/RCTHotUpdate.m
index 72435b6..119771b 100644
--- a/ios/RCTHotUpdate/RCTHotUpdate.m
+++ b/ios/RCTHotUpdate/RCTHotUpdate.m
@@ -59,6 +59,8 @@ typedef NS_ENUM(NSInteger, HotUpdateType) {
     HotUpdateTypePatchFromPpk = 3,
 };
 
+static BOOL ignoreRollback = false;
+
 @implementation RCTHotUpdate {
     RCTHotUpdateManager *_fileManager;
 }
@@ -92,7 +94,8 @@ RCT_EXPORT_MODULE(RCTHotUpdate);
             BOOL isFirstLoadOK = [updateInfo[paramIsFirstLoadOk] boolValue];
             
             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) {
                 loadVersioin = lastVersion;
                 
@@ -255,6 +258,7 @@ RCT_EXPORT_METHOD(reloadUpdate:(NSDictionary *)options)
         
         // reload
         dispatch_async(dispatch_get_main_queue(), ^{
+            ignoreRollback = false;
             [_bridge setValue:[[self class] bundleURL] forKey:@"bundleURL"];
             [_bridge reload];
         });