android - 可移植移动/平板电脑应用程序概念验证

标签 android ios xcode xamarin windows-8.1

我需要开发一个主要针对 Windows 8.1 和 iPad 的可移植应用程序,但稍后可以针对 Android、WP 和 iOS 进行扩展。 该应用程序包括调用 Web 服务以在网格中显示数据,它包含 CRUD 操作,它可以为离线模式保存一些本地数据,然后在连接建立后同步。

我在太多的解决方案之间左右为难,我需要你的建议以获得更好的解决方案。

1- 解决方案 1:针对每个操作系统(Windows 8.1 [RT 和专业版] 的 VS 和 iPad 的 xCode)采用原生解决方案:此解决方案需要代码复制、逻辑和 UI。

2- 带有 WebView 应用程序的 HTML5:我认为这是一个薄弱的解决方案,尤其是我们有本地存储、检查连接和调用 ws ...

3- 使用 Xamarin:我认为 Xamarin 不支持 WinRT 或 Windows 8.1 在 iPad 和 Windows 8.1 之间共享逻辑代码

4- 使用 Xamarin.Forms:构建 UI 很困难,而且它不支持 Windows 8.1。

从您的角度来看,最佳解决方案是什么?如果您有任何其他概念证明,请提出建议。

非常感谢。

最佳答案

大多数 html/hibrid 框架,如 Cordova (cordova.apache.org)、Ionic (http://ionicframework.com/) 等,都在 Android 上使用 native WebView。在 Kitkat 之前,WebView 的性能还不是生产就绪的,如果你有一个包含很多元素的列表,滚动体验真的很糟糕。

如果你想做一个简单的概念验证、原型(prototype)或其他什么,我认为 html 框架是一个很好的选择。但是,如果您打算将您的业务置于其中一个框架之上,我不会推荐。

有一种替代方法可以使用 Cordova 和 crosswalk (https://crosswalk-project.org/documentation/cordova.html) 嵌入 Chrome,但您将以 ~40Mb 的 APK 结束一个简单的 hello world。

关于android - 可移植移动/平板电脑应用程序概念验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27564656/

相关文章:

android - Calendar.WEEK_OF_MONTH 在两种不同的设备上给出不同的结果

ios - 如何指定行高?

ios - 无法在 Xcode 中启用健康记录功能

android - 即使在重新启动应用程序的情况下,也可以在android中按指定的间隔禁用按钮

android - 如何在 Android (Nexus 7) 上显示不可缩放的网页

android - 如何将时钟或日历附加到我的应用程序?

objective-c - 为什么 UIProgressview 进度条不能调整大小?

ios - UIActivityController 在 Facebook 上分享时不报告文本和图像

ios - 为什么我无法从 swift5 中的模拟器获取设备 token ?

xcode - 显示后调整 NSPopover 的大小