25
回答
OSC 第 103 期高手问答 —— React Native 与 Android 开发
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

OSCHINA 本期高手问答(12月15日- 12月21日)我们请来了饿了么的 Android 开发者 @RichardCao 为大家解答关于 React Native Android 开发 方面的问题。

曹立成,@RichardCao ,毕业于南京邮电大学,目前就职于饿了么,Android 开发工程师,参与开发饿了么蜂鸟众包APP,对跨终端 web 比较感兴趣,现在在做 react-native Android 在众包 APP 中的模块。

高手语录

个 人认为 React 将会成为趋势,下一代 web 技术,React Native 将会在移动端跨平台方向广泛使用,目前国内天猫 iPad 端已经实现产品落地,下一个版本的 React Native 也会支持 Swift 工程的构建,Apple 又将 Swift 开源,React 趋势已然势不可挡。

高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就 React Native Android 开发 方面问题向@RichardCao 提问,请直接回帖提问。

举报
叶秀兰
发帖于2年前 25回/5K+阅
共有25个答案 最后回答: 2年前
使用这个的直接原因,恐怕是,领导项目逼得紧,需求又经常改,反复无常。而APP 又不容易更新吧。
--- 共有 5 条评论 ---
RichardCao回复 @晴氧化纳 : (⊙o⊙)… 2年前 回复
晴氧化纳绕了半天还是领导逼得紧。 2年前 回复
RichardCao回复 @晴氧化纳 : 就目前来看还是不错的,前景比较乐观,react-native是fb的,google的是angular。。。技术肯定是早晚都会落后,但是在某一时期选取某些技术确实可以降低开发成本和开发周期,让产品快速上线 2年前 回复
晴氧化纳这只是实现 产品模块的方法之一,有前景的是产品,而不是某项技术。技术早晚都得落后。如果这个东西真的很好,google就会主动推动他发展了。。 2年前 回复
RichardCao也不是,主要是想以后往这种混合开发方面发展,react-native很有前景 2年前 回复
@RichardCao :现在互联网公司开发一个新的移动APP,是不是建议使用react native
--- 共有 1 条评论 ---
RichardCao不一定,react-native是可以减少一些开发成本,但是目前react-native android还有很多不完善的地方,目前比较适合做偏UI方面相对简单的一些需求和功能 2年前 回复
@RichardCao :学习成本如何,如果快速使用
--- 共有 2 条评论 ---
RichardCao入门学习也可以参考: https://github.com/xujinyang/react-native-android-guide https://github.com/jondot/awesome-react-native https://github.com/ele828/react-native-guide 2年前 回复
RichardCao学习成本不算太高,我之前从来没做过web开发,没接触过js,也能入个手写一写,我自己有总结的小博文可以看下,入手会比较快:http://richard-cao.github.io/ 2年前 回复
@RichardCao :请教一下,在开发模式下能否将转换的js直接打包到apk中而不用reload,另外可以说说你对访问外网js的想法吗?谢谢
--- 共有 1 条评论 ---
RichardCao直接将js打包不用reload是可以的,但是开发模式下这么做会比较麻烦。访问外网js我感觉可能会有一些安全性方面问题,其他的还好 2年前 回复
@RichardCao :问下两个问题 1).react native当初宣传的时候说的是 一次学习,处处编写。为什么react native不是那种传统的一次编写,处处运行。 2)native和web端的react有联系吗?
--- 共有 8 条评论 ---
RichardCao回复 @Entory : 共同期待~ 2年前 回复
npmer回复 @RichardCao : 受益良多。期待React生态圈未来的发展 2年前 回复
RichardCao回复 @Entory : 虚拟DOM主要是解决web的一个性能瓶颈问题,类似cordova之类的跨平台解决方案性能瓶颈就在DOM上,虚拟DOM就是当DOM有更改的时候在进行DOM渲染,可以有效地减少DOM渲染次数,解决这个性能问题。NG更适合单页的web app或者说H5在native部分。 2年前 回复
npmer回复 @RichardCao : 感谢您的分享,我还想问多最后一个问题,既然web的view和native的view无法公用,那在web上弄一层shadow-dom有什么意义?仅仅为了实现diff算法吗?react确实我没深入了解过,写NG比较多,感觉写react很繁琐。 2年前 回复
RichardCao回复 @Entory : 如果想一套view渲染web和app的话,UI部分的代码是不一样的,这个可以看react的文档和react-native的文档,render渲染的jsx部分代码不一样 2年前 回复
@RichardCao :能从学习周期、开发难度、运行速度方面分析下,angularjs和react native的差异吗?
--- 共有 1 条评论 ---
RichardCao对我个人来说,我是一个Android开发者,之前没接触过web和js,angular我也有看过,angular学习成本我认为比react高,做app方面的就是ionic,react是个纯UI的东西,react-native也是,然后提供了和原生app的扩展模块,开发周期我感觉对于我来说肯定是react比较快,运行速度方面react-native是要胜于ionic的 2年前 回复
@RichardCao :  最近在学习react native,开发过程中难免会涉及到与原生页面进行调用和传值。请问如何实现。是否有开源demo参考?
--- 共有 1 条评论 ---
RichardCaohttps://facebook.github.io/react-native/docs/native-modules-android.html#content 请参考这个,还是不难的,我做的这个小模块就用到了 2年前 回复
顶部