0

我用 Symphony/XSLT ( http://www.getsymphony.com/ ) 做了一个响应式网站。我想编写 2 个应用程序(IOS/Android),它们遵循我的响应式网站的相同行为。

然后,从逻辑上讲,我将不得不从 IOS 应用程序和 Android 应用程序调用数据库。但是,我将制作重复的代码,因为我希望应用程序在两个平台上都相似。

那么,最好的方法是什么?Android/IOS 应用程序会调用一个网络服务,而这个网络服务会调用数据库并将数据返回给应用程序?

有没有办法像“DLL”一样制作并将该“DLL”作为库提供给 Android/IOS 应用程序?

您还有其他解决方案吗?

干杯。

4

1 回答 1

0

不幸的是,由于 iOS 和 Android 是用完全不同的语言编写的,因此您无法在它们之间共享库。

业务案例将真正决定您是否应该使用 HTTP REST 服务向数据库发送数据和从数据库发送数据。话虽如此,我开发的大多数应用程序几乎总是使用 Web 服务。

如果您的目标是创建完全原生的应用程序,那么您真的别无选择,只能复制所有业务逻辑和数据访问逻辑以满足您的需求。但是,如果保持原生不是一个重要的优先事项,那么我实际上会为您的应用推荐Xamarin 。

Xamarin 是一个跨平台框架,可用于创建原生 iOS、Android 和 Windows 应用程序。您将使用 Mono 框架 API 在 C# 中编写逻辑,然后该代码将被转换为相应的 SDK 特定 API 调用。

Xamarin 与所有其他跨平台框架的不同之处在于它的设计模式。Xamarin 建议你创建一个包含三个子项目的项目。

首先,您将为 UI 创建两个子项目:一个用于 iOS,一个用于 Android。这些项目将创建对平台真实的 UI。因此,您的最终结果将是一个具有 100% 原生外观和感觉的应用程序。

其次,您将为公共公共库 (PCL) 创建一个子项目。这是您所有的数据库访问、业务逻辑和网络连接都会发生的地方。此 PCL 可用于 iOS 和 Android 子项目。

这将是您想要的理想解决方案。您将获得适用于 iOS 和 Android 的真正原生外观和感觉,并且您将获得一个可以在两者之间共享的库。

我亲自使用过 Xamarin 并编写了许多本机 iOS 和 Android 应用程序,我会推荐它用于您的业务案例。

于 2015-01-20T18:37:04.787 回答