From d7b5562ab709fa6f04bcea8373ec1fd4d2a74e2f Mon Sep 17 00:00:00 2001 From: sunnylqm Date: Sat, 28 Jun 2025 21:40:06 +0800 Subject: [PATCH] improve iOS reload handling --- ios/RCTPushy/RCTPushy.mm | 28 ++++++++++++++-------------- package.json | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/ios/RCTPushy/RCTPushy.mm b/ios/RCTPushy/RCTPushy.mm index 6655d5b..509da40 100644 --- a/ios/RCTPushy/RCTPushy.mm +++ b/ios/RCTPushy/RCTPushy.mm @@ -315,16 +315,15 @@ RCT_EXPORT_METHOD(reloadUpdate:(NSDictionary *)options if (hash.length) { // 只在 setNeedUpdate 成功后 resolve [self setNeedUpdate:options resolver:^(id result) { - // reload in earlier version dispatch_async(dispatch_get_main_queue(), ^{ - [self.bridge setValue:[[self class] bundleURL] forKey:@"bundleURL"]; - [self.bridge reload]; + #if __has_include("RCTReloadCommand.h") + // reload 0.62+ + RCTReloadCommandSetBundleURL([[self class] bundleURL]); + RCTTriggerReloadCommandListeners(@"pushy reloadUpdate"); + #else + [self.bridge reload]; + #endif }); - #if __has_include("RCTReloadCommand.h") - // reload 0.62+ - RCTReloadCommandSetBundleURL([[self class] bundleURL]); - RCTTriggerReloadCommandListeners(@"pushy reload"); - #endif resolve(@true); } rejecter:^(NSString *code, NSString *message, NSError *error) { reject(code, message, error); @@ -343,13 +342,14 @@ RCT_EXPORT_METHOD(restartApp:(RCTPromiseResolveBlock)resolve { @try { dispatch_async(dispatch_get_main_queue(), ^{ - [self.bridge reload]; + #if __has_include("RCTReloadCommand.h") + // reload 0.62+ + RCTReloadCommandSetBundleURL([[self class] bundleURL]); + RCTTriggerReloadCommandListeners(@"pushy restartApp"); + #else + [self.bridge reload]; + #endif }); - #if __has_include("RCTReloadCommand.h") - // reload 0.62+ - RCTReloadCommandSetBundleURL([[self class] bundleURL]); - RCTTriggerReloadCommandListeners(@"pushy restartApp"); - #endif resolve(@true); } diff --git a/package.json b/package.json index e4f9187..e13afc0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "react-native-update", - "version": "10.29.5", + "version": "10.29.6", "description": "react-native hot update", "main": "src/index", "scripts": {