我正在为我的一个客户维护大量应用程序,所有这些应用程序都有针对三个主要平台中每个平台的本机项目。这些应用程序的功能相对简单。我的客户希望始终利用每个平台中的最新功能来获得营销机会。他们还希望看起来像一个原生应用程序(响应式,而不是滞后)。我最近不太关注跨平台开发,所以这就是我联系SO的原因。
我最初的想法是编写一个具有三个平台共享的所有功能的C++库。然后,对于每个平台,我将编写一些网络、文件访问和 UI 代码,将抽象库代码连接到具体平台。
当然,这正是跨平台系统的目标。 当像PhoneGap这样的平台已经完成时,自己写这些内容会浪费我的时间吗?我担心的是我会依赖第三方。如果我自己编写代码,我可以完全控制,并且我将始终可以访问最新功能。
希望得到一些优点和缺点。
谢谢!
第三种选择(在Facebook的React Native和Microsoft的Xamarin之后)是Google的新Flutter,正如其他答案所暗示的那样,"然后纯粹以本机方式编写Windows应用程序"。顺便说一句,React Native 确实有 Windows 支持,在 Flutter 中缺少它可能是一个加号或减号,这取决于你如何看待它。
您是否考虑过在iOS和Android上使用React Native,然后纯粹在本地编写Windows应用程序?
有大量关于 React Native 优缺点的文章。
PhoneGap只是一个用HTML,CSS和JavaScript编写的网络。React Native 实际上为 iOS/Android 渲染原生组件。
还有Xamarin。它支持多个平台并使用 c#。来自母语的新功能都很好用。