bndkt / react-native-app-clip

Easily add an App Clip for iOS apps built with React Native
https://bndkt.com/blog/2022/react-native-app-clip
499 stars 24 forks source link

Excluded Packages Fix #43

Closed nathan-ahn closed 1 day ago

nathan-ahn commented 3 months ago

Problem

Excluded packages doesn't work (#27) for certain packages.

use_expo_modules(exclude: ...) handles unlinking Expo modules using the same underlying functionality as autolinking exclude. However, from my experimentation, this doesn't affect certain, non-Expo-module packages. This pull request steals code from an older version of this package before this commit to steal and modify @react-native-community/cli-platform-ios/native_modules.rb. Kudos to @bndkt for putting together the original solution!

Concerns

I'm hesitant on whether this pull request should be merged into the library considering how hacky it is. Depending on the version of @react-native-community/cli-platform-ios, the replacement breaks (I used 13.6.6 and 14.0.0 when writing and testing this PR). Additionally, it seems that the autolinking functionality is being moved into the core React Native library instead of relying on @react-native-community/cli-platform-ios. In the future, this fix will break and this solution will have to be reworked for autolinking.rb.

nathan-ahn commented 1 day ago

This PR is now broken with the Expo 52 changes. Refactor required; likely a wrapper command around the Expo and react-native-community/cli implementations of autolinking.