From 3f9f81493385d8fbd93a96462fe881ba4f660066 Mon Sep 17 00:00:00 2001 From: Christoph Purrer Date: Wed, 26 Aug 2026 16:11:15 -0700 Subject: [PATCH] Remove unimplemented sendIntent from RCTLinkingManager (#58154) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Summary: `sendIntent` is an Android-only Linking API. On iOS the JS layer never reaches the native module at all — `Linking.sendIntent()` returns `Promise.reject(new Error('Unsupported'))` for any non-Android platform, so the exported ObjC method was unreachable. Its body was only `RCTLogError(@"Not implemented: ...")`. It is also absent from `NativeLinkingManagerSpec`, the codegen'd protocol `RCTLinkingManager` conforms to, so a TurboModule call could not dispatch to it either: only spec methods appear on `NativeLinkingManagerSpecJSI`. The `sendIntent` declaration lives on the separate Android spec instead. Removing the dead stub. No behaviour change — the JS-visible rejection on iOS is produced in `Linking.js` and is untouched. Changelog: [Internal] Differential Revision: D117534390 --- .../react-native/Libraries/LinkingIOS/RCTLinkingManager.mm | 7 ------- 1 file changed, 7 deletions(-) diff --git a/packages/react-native/Libraries/LinkingIOS/RCTLinkingManager.mm b/packages/react-native/Libraries/LinkingIOS/RCTLinkingManager.mm index 0186376a4812..f25ad54a5f4a 100644 --- a/packages/react-native/Libraries/LinkingIOS/RCTLinkingManager.mm +++ b/packages/react-native/Libraries/LinkingIOS/RCTLinkingManager.mm @@ -233,13 +233,6 @@ - (void)openSettings:(RCTPromiseResolveBlock)resolve reject:(__unused RCTPromise }]; } -RCT_EXPORT_METHOD( - sendIntent : (NSString *)action extras : (NSArray *_Nullable)extras resolve : (RCTPromiseResolveBlock) - resolve reject : (RCTPromiseRejectBlock)reject) -{ - RCTLogError(@"Not implemented: %@", NSStringFromSelector(_cmd)); -} - - (std::shared_ptr)getTurboModule: (const facebook::react::ObjCTurboModule::InitParams &)params {