用于为ios和android构建应用程序的代码是相同还是不同?我知道有两个单独的文件,一个用.ios,另一个用.android,但那是我的知识结束的地方.这是原生的反应.谢谢!
使用Android和iOS构建的基本设置是相同的,但是一旦开始进入应用程序的开发,就会有一些差异.根据我的经验,我们可以打赌使用大约80%的代码跨平台.我听说其他人使用高达90%,我通常听说这个数字大约是85%.
要使用代码跨平台,您只需从.ios.js或.android.js文件中复制代码,然后将其复制到另一个文件中.只要没有特定于平台的组件,它就应该有效.
也:
有一些专门为iOS构建的模块,还有一些是专门为Android构建的,其中一些是跨平台的.例如,ActivityIndicatorIOS(https://facebook.github.io/react-native/docs/activityindicatorios.html#content)是iOS样式的元素,但是如果你查看组件本身,你将看到ActivityIndicatorIOS.android. js和ActivityIndicatorIOS.ios.js,所以它至少应该跨平台工作,但UI可能不会是你在Android中寻找的东西.
如果您安装任何需要访问任何本机功能的插件,例如使用自定义字体,您将需要单独执行一些工作(在每个平台上)以使它们适用于每个平台,并且它不能跨平台工作.
每个平台的桥接都是完全不同的,尽管这可能不是你甚至不必担心的事情,除非你需要做一些React Native不支持开箱即用的东西.
要在IOS中构建,您将需要Mac和Xcode.要在Android中构建,您将需要android SDK和某种类型的模拟器(我使用Genymotion).但请记住,截至目前,除非使用像ExponentJS这样的东西,否则无法在Windows机器上开发iOS ,但如果你有Mac,则可以开发跨平台.