构建混合应用程序,从哪里开始?

Building a hybrid app, where to start?

我知道这是一个 'open' 的问题,但我不知道从哪里开始。让我先告诉你一些我的 experience/background 这样你就知道我的水平了:

所以现在我坚持这个想法来为自己构建一个应用程序。我决定它应该是一个混合应用程序,因为我的目标受众非常少,但 60% 是 iOS,我不想遗漏 Android。此外,我已经熟悉 HTML5/CSS3 并开始为我的应用程序开发组件。 该应用程序的基本概念是它是 Google 功能之上的一层:个人资料、日历、圈子和视频群聊。用户将(最终我希望)能够为其他用户创建事件以进行回复,他们将能够将彼此添加为好友并就事件进行聊天。功能明智的一小步,但对我来说却是一大步:)

我正在考虑使用 Android 版本的 Crosswalk 项目来解决围绕混合应用程序开发的最大问题。

过去几个月我一直在阅读准备工作,但我读得越多,似乎知道的就越少。这是我认为我应该了解更多的东西;

现在我不是在寻找一些拖放软件包来在 3 天内构建应用程序。我本身不想走简单的路线,我不介意有点学习曲线。我在 Win8 机器上工作,我知道这不是最佳选择,但我无法更改它。

现在我应该从哪里开始呢?我自己也在考虑 NPM,但你们可能不这么想。关于您认为我需要学习的东西的好书吗?

谢谢指教!

我可以分享我使用 Cordova 的经验。

我像全栈开发人员一样工作,并且我非常擅长构建响应式网站,因此接触移动开发的自然步骤是尝试 Cordova。

首先您可以开始构建 HTML 文档完全响应并尝试在您的目标设备上作为网页。 针对移动设备的一个很酷的东西是你可以使用新的 CSS3 指令,而不用担心与旧浏览器的兼容性。

首先,我按照本教程安装了 Cordova。 https://ccoenraets.github.io/cordova-tutorial/create-cordova-project.html 打开项目上的 /www 文件夹,您可以像网站一样编辑您的应用程序,也可以像普通网站一样使用浏览器进行调试。

为了增强功能,您会发现 github 上有很多插件可以扩展 Cordova/phonegap 项目中的本机功能。

我建议您也使用 onsen http://onsen.io/ 构建一个框架,让您可以轻松地使用移动设备 UI。

我可以给你的最后一个提示,如果你的目标 Android 是在虚拟机上尝试你的应用程序,我使用 Genymotion https://www.genymotion.com/,它比 SD<

祝你的第一个应用程序好运!

正如你所想象的,有很多框架可以让你入手。

看你的技能,也许使用 JS/HTML/css 堆栈更好,但在这种情况下,你将在 webview 中创建一个混合应用程序。 在我看来,webview 应用程序的质量只能接受,但由于他的生产力,在某些情况下可能是最好的决定。

另一个不错的选择是 react-native。该框架允许使用 javascript 创建本机应用程序。 React 有自己的标记语言,非常类似于html。 JS 代码使用嵌入器 javascript 引擎在本机设备上执行,而不是 webview,因此,性能和体验可以与本机应用程序进行比较。

最后,我的替代方案是我编写的框架,用于编写本机 UI 并为每个平台共享业务逻辑。你可以看看 aj-framework https://github.com/bfortunato/aj-framework