具有脱机功能处理个人信息的平板电脑解决方案的技术选择

时间:2017-05-17 14:51:19

标签: android ios html5 tablet

我们希望重写一个基于表单的应用程序,时间规模相当紧凑(理想情况下,我们将在7月中旬推出测试版,最终版本将在9月推出)。目前的平台显示出其局限性,需要过高的金额才能符合我们的要求。因此,我们希望将技术引入内部,并编写我们自己的解决方案。

要求:

  • 必须能够处理网络连接丢失 - 用户可能无法始终访问互联网
  • 必须与服务器进行安全的双向通信 - 上传和下载的信息可能包含个人信息,我们必须对数据丢失负责
  • 必须能够同步和更新/删除平板电脑上已有的记录 - 信息可能会发生变化,用户必须尽可能“新鲜”地访问
  • 必须能够存储大量记录(~1000 +记录,每个几KB,总共5个MB)离线 - 根据平板电脑型号,用户可能只能通过wifi访问互联网在一天的开始和结束时,应该下载并存储可能访问的许多记录
  • 应该可以在iOS和Android上访问

我们目前的解决方案是一个表单应用程序,它在第三点上严重失败,这正迅速成为一个交易破坏者。已浮动的解决方案是:

  • 具有离线功能的HTML5网站,通过平板电脑的网络浏览器
  • 一个包含在现成应用程序“shell”中的网站,用于提供通过应用商店部署的离线功能
  • 通过应用商店
  • 部署的定制应用(通过Xamarin或类似产品)

不幸的是,我们是桌面开发人员的公司 - 我们目前没有平板电脑应用程序的内部经验。话虽如此,该应用程序与我们的其他几个产品密切相关,因此很难将开发外包。

因此,问题是:

作为移动应用程序开发人员,“建议”采用何种方法来构建具有脱机功能的应用程序,该应用程序必须能够与服务器进行安全通信?

1 个答案:

答案 0 :(得分:1)

因此,对于需要同步的5 MB数据,我将构建一个Web服务,您可以从中获取移动应用程序的数据。

我更喜欢数据的JSON格式。

当您的应用在互联网连接时登录时,该应用可以从网络服务获取完整数据。

我所做的是将json压缩或存档为app内部文件系统。

现在该应用只有两种情况:

离线(登录):

  • 获取存档的json文件并使用您的数据执行您想要的操作

在线(登录)

  • 从Web服务中再次获取数据,将其存档,然后使用您的数据执行您想要的操作

将数据同步回后端并不是真正的移动应用程序。您必须在后端考虑您的架构。

为了安全起见,请确保已启用ssl以连接到Web服务。

我是原生iOS开发人员,但我使用Symfony构建类似Backend和三个本机应用程序(iOS,Android和Windows)

你也可以使用firebase作为后端,它实际上取决于你的需求。

最后,我只是来自互联网的陌生人:)并且通常当客户需要估算时,我们确实需要时间进行这样的估算并选择适合客户的合适平台。