To me react native is the only real way to go if you are considering cross platform development besides using a webview and web stack for your UI.
Reason is simple. React Native abstracts only platform away by exposing base components. If you really need something for a specific platform it is very easy to write a custom plugin - so you will need some platform knowledge. I have used flutter as well but must admit it feels not the way as I would like to have - especially the shader compilation if a component gets shown for the first time I feel annoying.
So to me react native is best - but comes with its own pain points like updates...
If you can afford it go pure native and try to write business logic in a shareable language e.g. Rust, C, C++, Kotlin native... and integrate the UI based on the platform.
If thats not an option I recommend react native + if needed custom modules and try to not use too many third party libs.
Reason is simple. React Native abstracts only platform away by exposing base components. If you really need something for a specific platform it is very easy to write a custom plugin - so you will need some platform knowledge. I have used flutter as well but must admit it feels not the way as I would like to have - especially the shader compilation if a component gets shown for the first time I feel annoying.
So to me react native is best - but comes with its own pain points like updates...
If you can afford it go pure native and try to write business logic in a shareable language e.g. Rust, C, C++, Kotlin native... and integrate the UI based on the platform.
If thats not an option I recommend react native + if needed custom modules and try to not use too many third party libs.