タイトルにある通り未解決です…。
昨日の記事で、「react-native-animated-splash」ライブラリで React Native の Android アプリにスプラッシュアニメーションを追加する方法についてご紹介しましたが、本日、iOS にも導入したところ、見事にエラーが発生しました…。
詳しい状況ですが、まず iTerm などのターミナルアプリ上で react-native run-ios
コマンドでアプリを実行した際にはエラーは発生しません。
ですが、Archive
を行おうと、Xcode でビルドを行おうとしたところ、タイトルにあるようなエラーが発生しました。
正しくはビルドを行おうとすると「Library not found for -lRNAnimatedSplash」エラーが発生し、Archive
を実行すると「Library not found for -lBoringSSL-GRPC」エラーが発生するという状況です。
…どちらもライブラリが正しく読み込めないエラーですね。
ただ、RNAnimatedSplash
ライブラリについては、AppDelagate.h
でインポートを行っているのですが、こちらを追加した時にはエラーは発生せず、それどころか入力途中にサジェストが行われたので、正しくインポートできていると思うのですが…。
なお、ビルド時に発生する「Library not found for -lRNAnimatedSplash」エラーについては、下記の投稿を参考にしたところ解決できました。
“_OBJC_CLASS_$_RNSplashScreen”, referenced from: objc-class-ref in AppDelegate.o · Issue #318 · crazycodeboy/react-native-splash-screen · GitHub
https://github.com/crazycodeboy/react-native-splash-screen/issues/318#issuecomment-514362981
プロジェクトの Build Settings > Header Search Paths に下記のパスを追加するという方法です。
$(SRCROOT)/../node_modules/react-native-splash-screen/ios
結果、確かに「Library not found for -lRNAnimatedSplash」エラーは発生しなくなったのですが、今度は「Undefined symbol: _OBJC_CLASS_$_Splash」などのエラーが発生し、結局正しくライブラリが読み込めていないというエラーは解決しませんでした。
まだ時間的に猶予があるのでもう少し調査してみますが、もしどうしてもダメなら、「react-native-animated-splash-screen」ライブラリに変更するか、スプラッシュアニメーションを諦めるかしたいと思います。
…できれば解決したいですけどね!
以上、React Native の iOS アプリに「react-native-animated-splash」ライブラリを導入した際に遭遇したエラーについてでした。
解決できたら、また記事にまとめます!