【问题标题】:Mobile Application Solution Architecture (Android to start, multiple platforms)移动应用解决方案架构(Android启动,多平台)
【发布时间】:2011-08-04 23:06:31
【问题描述】:

我的任务是构建我们公司的移动应用程序平台。我确实使用传递 json 的 REST API 在 android 中构建了一个测试应用程序,但我不确定这是否是最佳解决方案。

应用程序最终必须在 iphone、windows mobile、blackberry 和 android 上运行。还有一些业务规则让我对整体架构应该如何摇摆不定。

首先,让我解释一些术语。 客户是实际上是我们客户之一的企业。客户彼此不了解。 超级用户可以为所有客户做所有事情,并且是我们的员工。 管理员可以为特定客户做所有事情,并受雇于客户。 最终用户是客户的客户。最终用户可能与我们的一位客户开展业务,或者可能与其中一位以上的客户开展业务。但他们不知道这一点(我不能向他们展示所有客户的列表,让他们选择与哪些客户相关联)。

目前,我们有一个网络应用程序,其中来自客户网站的链接表示最终用户与谁关联。然后,他们使用该客户的帐号将客户数据附加到他们的网站帐户。

所以,我需要开发几个不同的应用程序,我想我已经确定了 2。一个管理应用程序和一个最终用户应用程序。如果超级用户登录到管理应用程序,他们将被允许选择他们正在处理的客户端。如果普通管理员登录,他们将只能使用与其关联的客户端。

最终用户应用程序让事情变得混乱。我必须知道他们正在与哪个客户合作,然后获取他们的帐号以附上他们的客户详细信息(一旦我知道他们使用的是什么客户,这很容易)。最初的想法是为每个想要将其提供给用户(或给他们源代码)的单个客户端发布一个应用程序版本,然后将每个版本硬连接到该客户端中。但这似乎需要维护一个巨大的 clusterf**k。我必须处理的另一个警告是允许应用程序具有主题化和品牌化。

这是我无法决定架构的地方。我应该像我对其他应用程序所做的那样,在移动平台上使用 UI 并通过服务传递数据,还是应该让移动应用程序成为 Web 托管应用程序的 webview 门户?两者都有优点和各自的问题,都没有解决必须将最终用户附加到客户端的问题。我正在寻求跨多个平台开发移动解决方案的任何人的建议。

标签: mobile architecture


【解决方案1】:

我没有任何构建移动解决方案的经验,但我的直接想法是我更喜欢第一个选项:“让 UI 在移动平台上并通过服务传递数据”。

我这样做的原因是用户体验。我使用的是 Windows Mobile (WP7),我真的很喜欢本机 UI - 它既吸引人又高效(最重要)。相比之下,浏览网络应用程序既不愉快也不简单。

如果您想创建一个人们想要使用的应用程序(这只会对您的业务产生积极影响),那么您会希望采用原生 UI 路线。

我也没有看到架构选项是相互排斥的;您可以实现一个坚实的服务基础,而这些服务又可供基于服务器的 Web UI 和移动 UI 使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多