您会选择哪种: 具有出色用户体验的单平台应用程序还是具有较差用户体验的跨平台应用程序?
如果Facebook 9月未同意将其流行的React框架重新授权给第三方,企业家将面临这一选择。React Native在iOS和Android上呈现移动用户界面,需要最少甚至不需要本地编码。
这不是一个容易做出的决定。量身定制的用户体验对客户而言比以往任何时候都更加重要,但是六便士的应用程序开发成本为廉价地支持这两个平台提供了强大的动力。
然而,有了React Native,企业家可以两全其美。无论您是在构建新应用还是在改进旧应用,请使用以下四个技巧通过React Native来完成该任务:
过去,确定支持哪个平台是该应用程序可能的用户群的问题。北美和西欧由iOS主导,而Android几乎在其他任何地方都领先。在全球范围内,88% 的智能手机用户运行Android。
反应原生几乎完全消除了这种选择。使用React Native的开发人员不需要在Swift和Java (iOS和Android各自的语言) 中构建并行代码库,而只需要为这两个平台维护一个JavaScript代码库。
在Yeti,我们尝试了phoneGap和Xamarin等跨平台解决方案,但都没有为用户和开发人员提供出色的体验。这并不是说React Native消除了所有跨平台挑战,但它大大减少了它们。
剩下的跨平台挑战是什么?它们往往归结为两种设备之间的硬件差异。例如,如果您的应用程序将使用蓝牙技术 (Apple payor Android的近场通信功能),则仍然需要编写本机代码。
因此,进行严格的测试,以确保您在Android设备中构建的任何功能都可以跨Android设备的不同形状和屏幕大小做出反应。如果屏幕在Android或iOS中渲染不干净,请考虑分别设计和开发屏幕。
知道一个好消息: 随着React社区的成熟,本地代码的需求一直在稳步下降。
需要帮助吗?检查React本机组件库,以避免使用本机iOS或Android代码重新发明轮子。
“移动优先” 成为企业家和开发者的口头禅。原因是从网络到移动设备的移植可能是一场噩梦。在桌面上工作的东西很少在智能手机屏幕上工作。
React Native并不能解决许多桌面到移动设计的挑战,但它确实使企业家能够重用React中编写的web应用程序中的代码。那里也有人才优势: 使用React Native的Web开发人员可以比其他方式更轻松地进入移动开发。
实际上,沃尔玛实验室使这一过程变得更加容易。该公司在其网站的前端使用基于React的系统,只是开源了一个工具,该工具允许企业家迁移现有应用程序以实现React Native。沃尔玛使用自己的工具将其购物车网络应用程序转换为移动应用程序。
即使它们的界面看起来相似,iOS应用程序及其Android兄弟也可以使用截然不同的代码运行。在React Native之前,使两种语言的应用程序都很流利。例如,只有一个挑战是Apple设计元素存在于两个维度中,而Android设计包含深度。
但是,假设该应用程序没有广泛使用专有硬件 (例如手机的摄像头),则React Native可以大大缩短转换时间。最初为iOS部署的相对简单的React本机应用程序可以在短短几周内为Android推出。在进入市场之前,请务必检查界面问题并结合专有功能,例如Android的后退按钮。
Facebook本身做了这个2015年。这家科技巨头制造了最初为iOS开发的Ads Manager应用程序,既是它的第一个React本机应用程序,也是它的第一个完全跨平台的应用程序。将Ads Manager移植到Android花了三个月的时间,但此后,该团队将React本机转换转化为一门科学。
总而言之,技术世界之外的人可能低估了React Native对应用程序开发的影响。同时支持iOS和Android已经远远没有过去的巨大任务了。借助React Native,企业家可以花更多的时间满足用户的需求,而更少的时间担心他们选择智能手机。