cordova 使用JavaScript构建原生应用程序的最佳方法?

smtd7mpg  于 2023-10-24  发布在  Java
关注(0)|答案(7)|浏览(161)

我一直在玩一段时间与phonegap,做了一些测试我的Android.
很漂亮
我的问题是:
用Web客户端(HTML / JavaScript / CSS)开发本地移动的应用程序的最佳(您最喜欢的)框架是什么?
在多平台(iOS / Android / BlackBerry)并行构建和维护这些应用程序有多容易?在不同平台(iOS / Android / BlackBerry)之间是否有许多例外?
为iOS开发应用程序有什么要求?我是否需要一个特殊的IDE和特殊的SDK?我是否必须有一台Mac?

a9wyjsp7

a9wyjsp71#

我们目前正在使用React Native构建一个原生iOS应用程序。如果不包括在这里,那将是一个遗憾。
优点:

  • React将DOM视为实现细节。这使得过渡到原生UI非常自然。它还消除了编写原生应用程序时对HTML/CSS的需求。您所需要的只是用JavaScript编写的原生组件。
  • 本地组件!基本的原生组件已经被桥接到了JavaScript上,并且有一个社区忙碌正在忙着把其他的东西都带过来。问题是,如果你知道或愿意学习一些Objective C或Java,有一个easy process可以向React Native添加任何原生模块(或第三方模块)。
  • 快速迭代。自从3月份主分支开源以来,已经有超过2600次提交。
  • 您可以获得普通React的所有好处:虚拟视图层,差分,声明式UI创建,出色的开发人员体验和一流的社区。
  • 您可以从同一个存储库为多个平台构建,重用大部分相同的代码库(主要是应用程序逻辑)。

缺点:

  • 它还很年轻,有一些特性需要jimmy-riging、第三方库或自定义的Java/C来实现。
  • 一些绑定到DOM或浏览器API的第三方库仍然不能在React Native上工作,包括React Router。
  • 最大的痛苦与XCode和苹果的开发者计划有关,但没有办法绕过这一点。
  • 在多平台中构建和维护这些应用程序有多容易?*

React Native for Android于2015年9月14日开源。我还没有使用过它,但到目前为止我已经学到了什么。* 更新10/21/16:* React Native for Windows Universal Platform于今年早些时候发布。这意味着你现在可以使用React Native为Windows桌面,Windows手机甚至Xbox构建应用程序!
React Native并不打算成为一次编写,随处运行的心态。他们采用了一次学习,随处编写的范式。iOS是一个与Android非常不同的平台,因此需要为两个平台的设计付出真诚的努力。原生API也会有所不同。
所以,你最终会为原生组件和API重写代码。然而,你的大部分应用程序逻辑都可以重用。事实上,React-Native是有组织的,这样你就可以将Android和iOS应用程序放在同一个存储库中,这样你就可以在可能的情况下重用相同的代码。我认为它很聪明,但只有时间才能证明。According to them,到目前为止它运行得很好。
顺便说一句,Facebook built an iOS app using React Native的一个团队在三个月内使用87%的相同代码库构建了Android版本。

  • 为iOS开发应用程序的要求是什么?*

目前,你需要一台Mac和XCode来进行部署。目前解决这个问题的方法很少。根据this issue和Slack上的对话,一旦部署,你实际上可以在Windows或Linux机器上进行开发。Facebook也在开源他们所有的Nuclide包,根据their presentation at F8,这些包将包括在没有XCode的情况下打包和构建的工具。
总的来说,React Native是一次出色的体验。在我看来,它比目前任何其他东西都要出色。社区内部的感觉也非常积极。我只能假设随着时间的推移它会变得更好。

bcs8qyzn

bcs8qyzn2#

如果您的应用程序非常简单(例如现有Web应用程序的端口),并且您只需要在一个平台上使用它,并且它不需要与手机特定功能集成,则您可能希望在所选平台上简单地使用WebView。如果您选择的平台是iOS,并且您没有任何编程技能,则可以按照以下步骤操作:

  • 在Mac上下载xCode,
  • 下载这个简单的Web视图应用程序项目:https://github.com/nomtek/iOSWebViewApp
  • 在xCode中打开简单的Web视图应用程序
  • 将HTML添加到项目中
  • Run it:)

这种方法的优点:

  • 简单的设置
  • 无需加载额外的库-应用程序启动速度更快
7kqas0il

7kqas0il3#

这是一个不断变化的竞技场,它只会变得更好。在你感兴趣的时候搜索一下是最好的选择。在写这篇文章的时候,我正在看以下内容,没有特别的顺序:

nmpmafwu

nmpmafwu4#

这些是选择
电话间隔:http://phonegap.com/
PhoneGap是一个免费的开源框架,允许您使用标准化的Web API为您关心的平台创建移动的应用程序。下载Phonegap.
Coronalabs:http://coronalabs.com/
Corona SDK为iOS、Android、Kindle和Nook构建丰富的移动的应用。在很短的时间内构建高质量的移动的应用。
Appcelerator:http://www.appcelerator.com/
Appcelerator是唯一的移动的第一平台,使企业能够创建,交付>和分析他们的移动的应用程序。

aydmsdu9

aydmsdu95#

如果你想用JavaScript构建一个移动的应用程序,PhoneGap看起来确实是你的最佳选择
是的,你需要一台Mac电脑,因为你需要安装XCODE(https://developer.apple.com/xcode/)-苹果自己的IDE。

kqqjbcuj

kqqjbcuj6#

如果你花点时间学习一种新的脚本语言,Coronalabs将是你的新武器。有了它,你可以构建原生(跨平台)应用程序,如果需要的话,你可以使用web视图添加HTML/CSS/JavaScript内容。

8ehkhllq

8ehkhllq7#

目前,React Native是在JavaScript中创建移动的应用程序的最佳选择。
以下是我的三大理由:
1.非常活跃的开发和更新-毕竟它起源于FB
1.可忽略的学习曲线
1.伟大的在线资源
我能够在没有之前的React Native经验的情况下编写一个小但功能强大的应用程序,甚至在2天内将其部署到Google Play商店。
我还看到React Native的一个很大的好处是,你可以在任何时候“弹出”你的应用程序,并继续在Android Studio或XCode中工作。这可能是一个很大的缓解,开始简单,但可能会在一段时间内变得复杂的项目。
以下是我在构建第一个Android react本地应用程序时编写的简短教程:http://geekycentral.com/creating-a-native-android-app-using-javascript-hello-react-native/

相关问题