ReactNativeはどうなんだろう?
ReactNative for Mac, Get Started with macOS
試していくと、最後の
npx react-native run-macos
で、hellorn has not been registeredとかいうエラーが出る。 ぐぐったらSOが引っかかるが、条件が違いそう(これはexpoというのを使ってるケース?) Invariant Violation: “main” has not been registered
とりあえずindex.jsでconsole.logした所、registerComponentまでは呼ばれているように見えるな。
Call StackをタップしたらVSCodeでAppRegistry.jsを開き、問題の所に入ってくるappKeyとrunnablesを出力した所、
appKeyはhellorn
となっているが、runnablesのキーはHelloRN
になっている。
app.jsonのnameをhellorn
に変更してみた。
お、起動したヽ(´ー`)ノ
よしよし、次は何したらいいかな、とMacのAPIのドキュメント見ても何も無い。 何も無いのか?と思ったが、メニューはなんか出てるんだよな。
XCodeのプロジェクトを開いたら、普通のアプリのプロジェクトっぽく実行出来る。お、これでいいんじゃね?
試しにWebViewを入れてみよう。
https://github.com/react-native-webview/react-native-webview/blob/master/docs/Getting-Started.md
動いた。リリースビルドしてみよう。
ビルド結果はどこに出来るんだ?
/Users/ユーザー名/Library/Developer/Xcode/DerivedData/hellorn-bddcuuqiauaopbgsggswiccvfkgm/
の下にあるっぽいな。
よし、見つけた。バイナリは12.6MB。まぁ100MBよりは小さいな。
assetExtsにcssが無いよ、とか言われる。
https://github.com/highcharts/highcharts-react-native
この辺を参考にresolverとか追記してみたらエラーは消えたが効いて無さそう?
https://github.com/react-native-webview/react-native-webview/issues/1012
単にnpm installすれば良い、という訳では無さそうだなぁ。
Improving Communication Between React Native WebViews and the Webpages they Render