我一直在玩一段时间与phonegap,做了一些测试我的Android.
很漂亮
我的问题是:
用Web客户端(HTML / JavaScript / CSS)开发本地移动的应用程序的最佳(您最喜欢的)框架是什么?
在多平台(iOS / Android / BlackBerry)并行构建和维护这些应用程序有多容易?在不同平台(iOS / Android / BlackBerry)之间是否有许多例外?
为iOS开发应用程序有什么要求?我是否需要一个特殊的IDE和特殊的SDK?我是否必须有一台Mac?
7条答案
按热度按时间a9wyjsp71#
我们目前正在使用React Native构建一个原生iOS应用程序。如果不包括在这里,那将是一个遗憾。
优点:
缺点:
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版本。
目前,你需要一台Mac和XCode来进行部署。目前解决这个问题的方法很少。根据this issue和Slack上的对话,一旦部署,你实际上可以在Windows或Linux机器上进行开发。Facebook也在开源他们所有的Nuclide包,根据their presentation at F8,这些包将包括在没有XCode的情况下打包和构建的工具。
总的来说,React Native是一次出色的体验。在我看来,它比目前任何其他东西都要出色。社区内部的感觉也非常积极。我只能假设随着时间的推移它会变得更好。
bcs8qyzn2#
如果您的应用程序非常简单(例如现有Web应用程序的端口),并且您只需要在一个平台上使用它,并且它不需要与手机特定功能集成,则您可能希望在所选平台上简单地使用WebView。如果您选择的平台是iOS,并且您没有任何编程技能,则可以按照以下步骤操作:
这种方法的优点:
7kqas0il3#
这是一个不断变化的竞技场,它只会变得更好。在你感兴趣的时候搜索一下是最好的选择。在写这篇文章的时候,我正在看以下内容,没有特别的顺序:
nmpmafwu4#
这些是选择
电话间隔:http://phonegap.com/
PhoneGap是一个免费的开源框架,允许您使用标准化的Web API为您关心的平台创建移动的应用程序。下载Phonegap.
Coronalabs:http://coronalabs.com/
Corona SDK为iOS、Android、Kindle和Nook构建丰富的移动的应用。在很短的时间内构建高质量的移动的应用。
Appcelerator:http://www.appcelerator.com/
Appcelerator是唯一的移动的第一平台,使企业能够创建,交付>和分析他们的移动的应用程序。
aydmsdu95#
如果你想用JavaScript构建一个移动的应用程序,PhoneGap看起来确实是你的最佳选择
是的,你需要一台Mac电脑,因为你需要安装XCODE(https://developer.apple.com/xcode/)-苹果自己的IDE。
kqqjbcuj6#
如果你花点时间学习一种新的脚本语言,Coronalabs将是你的新武器。有了它,你可以构建原生(跨平台)应用程序,如果需要的话,你可以使用web视图添加HTML/CSS/JavaScript内容。
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/