便携式移动/平板电脑应用概念验证

时间:2014-12-19 11:01:06

标签: android ios xcode xamarin windows-8.1

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

我在太多解决方案之间徘徊,我需要你的建议以获得更好的解决方案。

1-解决方案1:针对每个操作系统进行原生(VS for Windows 8.1 [RT and pro]和xCode for iPad):此解决方案需要代码复制,逻辑和UI。

2- HTML5 with WebView app:我认为这是一个弱解决方案,特别是我们有本地存储,检查连接并调用ws ...

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

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

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

非常感谢。

4 个答案:

答案 0 :(得分:3)

大多数html / hibrid框架(如Cordova(cordova.apache.org),Ionic(http://ionicframework.com/)等)在Android上使用本机WebView。直到Kitkat,WebView的性能还没有生产就绪,如果你有一个包含大量元素的列表,那么滚动体验真的很糟糕。

如果你想做一个简单的概念证明,原型或其他什么,我认为html框架是一个很好的选择。但如果你打算把你的业务放在这个framworks之一,我不建议。

可以使用Cordova& amp;人行横道(https://crosswalk-project.org/documentation/cordova.html)但你会以一个简单的hello世界的APK~40Mb结束。

答案 1 :(得分:2)

只需2美分。我没有看到使用在您计划发布和支持的平台上不受支持的库的重点。就个人而言,我为每个平台本地编码。虽然这需要很多工作,但如果你不得不询问你想要把你的应用程序带到哪个路径的方向,那么这种类型的项目听起来更像是“你收获你播种的”应用程序。此外,您将能够直接支持每个问题而无需等待补丁,但该硬币也有两面。您的机会成本缺少图书馆将提供的未来功能,如果值得的话。

答案 2 :(得分:2)

如果你的目标是质量,那么本地化就是唯一的方法......你可以减少工作量like Google is doing:用Java编写业务逻辑和单元测试,然后用{{3将它转换为ObjC和J2ObjC的Javascript。 在您的情况下,由于Java是C#的一个愚蠢版本,您可以轻松找到转换为后者的工具,找到适合每个平台的本机业务逻辑!这应该占代码库的50%-70%...

答案 3 :(得分:1)

我认为使用带有webapp视图的HTML5是更好的选择。

使用Cordova(Phonegap)大多数本机功能都可以在HTML webapp中轻松实现。 PhoneGap Platform Guide 很多其他插件都可用于BLE,NFC等高级功能。

在HTML5中调用webservice确实不是问题。 简单的ajax就足够了,但现在有很多高级框架可供使用,这使您的工作变得轻松。其中最好的是Angular JS(由谷歌维护)。

Angular JS

对于数据库,您可以访问移动设备的目标OS或SQLite数据库的本机数据库。 你可以查看这个链接 Storage options

因此,在您的情况下,开发Web应用程序可能是更有效的解决方案。根据我的观点,它可能是最好的方式。但是,你可以做一些R& D并且可以找到适合你的。