Я новичок в React Native и мобильной разработке в целом. Но у меня есть простая библиотека Java с тестами junit, и я хочу сделать одно из двух:
1) Я хочу преобразовать этот Java-код для естественного использования с React Native для разработки на iOS и Android.
2) Я хочу использовать этот Java-код только с Android в гибридном приложении.
У меня, наверное, есть некоторые пробелы в понимании того, как все это работает. Я понимаю, что Java является родной для Android и поэтому используется только для разработки под Android. React native устраняет межплатформенный разрыв, чтобы декомпилировать собственный код реакции в код конкретной платформы.
Если бы я хотел использовать свой Java-код для разработки на iOS, произойдет ли это через Родные модули? Можно ли поступить независимо?
Если он предназначен только для использования на Android (что нормально), можно ли использовать настройку, описанную в разделе Native Modules на веб-сайте React Native?
Спасибо!
Насколько мне известно, вы не можете напрямую развернуть код, написанный java, как на Android, так и на IOS в режиме реакции. Вы можете сделать это только для конкретных частей Android в react-native. Если вы хотите использовать его как совместимый с IOS, вам необходимо написать собственный модуль из носителей IOS.
Если вы хотите развернуть свой собственный модуль Android, вы можете следовать этому подробному примеру https://hackernoon.com/first-experiences-with-react-native-bridging-an-android-native-module-for-app-authentication-501fec247b2b
Если вы хотите создать собственные модули как для Android, так и для IOS, вы можете следовать этому примеру https://medium.com/@FizzyInTheHall/writing-a-react-native-bridge-library-bce5b90ea6d0
Вы не можете использовать свой Java-код под iOS. «Родной» частью React Native является то, что родной для платформы, например, Java / Kotlin / что угодно на Android, ObjC / Swift / что угодно на iOS.