哪个框架最适合使用数据库连接开发移动应用程序?

时间:2013-04-23 10:17:09

标签: jquery-mobile mobile sencha-touch cordova mobile-application

我使用PHP5开发了一个网站。现在,我想在跨平台的移动应用程序中总结我的网站的主要功能。

我做了一些关于可以做到这一点的框架的研究。我发现'jQuery Mobile','SenchaTouch'和'Cordova'是最受欢迎的。但我想开发一个应用程序,它需要连接到数据库,并且可以在iOS和Android上移植(至少)。

我尝试了'jQuery Mobile'但是应用程序需要在Web浏览器中打开才能显示应用程序(就像一个简单的网站)。例如,我想打开我的应用程序,就像当前的手机应用程序,而不通过使用数据库连接的Web浏览器(具有与当前网站相同的行为,并显示MySQL请求的内容但没有Web浏览器)。 / p>

是否可以使用jQuery Mobile或其他?或者我必须通过网络浏览器?有人可以帮帮我吗?

3 个答案:

答案 0 :(得分:19)

目前有3种不同类型的移动应用程序:原生应用程序,混合应用程序和Web应用程序。本机应用程序是用Java(用于Android)或Objective-C(用于iOS)编写的应用程序。原生应用程序可以完全访问手机上的低级硬件功能,可以从应用商店下载。 Web应用程序是使用特殊JavaScript工具包(如jQuery Mobile和Sencha Touch)和自定义CSS的网站,使网站看起来像本机应用程序一样。但是,Web应用程序只能通过浏览器访问 - 虽然您可以将网站“标记”到手机的主屏幕以便于访问,但仍无法从应用商店下载它们并且无法访问到手机上的硬件功能。混合应用程序是这两者之间的交叉。混合应用程序基本上是在本机代码中“包装”的网站。这允许您创建一个本机应用程序,其核心只是一个网站,但是,包装允许您访问本机应用程序等低级硬件,并允许您将应用程序发布到应用程序商店。混合应用程序的另一个主要优点是,您只需要知道HTML / JavaScript即可创建可在所有移动操作系统上运行的多平台应用程序。这就是科尔多瓦所做的。

听起来你想要做的就是使用jQuery mobile(或Dojo Mobile,或Sencha Touch,或其他数百个其他JavaScript工具包之一)创建混合应用程序。这样你就可以利用你的web开发技巧并构建一个连接到您的数据库的网站。但是,当最终使用Cordova“编译”您的HTML / CSS“移动网站”时,它会为iOS,Android和其他平台吐出原生外观的应用程序,然后您可以将这些应用程序发布到应用程序商店。当用户从应用商店下载您的应用并点击启动图标时,他们会看到您的网站,但他们将看不到浏览器工具栏或类似内容 - 大多数用户将不知道他们正在查看HTML / CSS “网站。”这听起来像是你的目标,拥有一个像网站一样功能但看起来不像网站的应用程序。

答案 1 :(得分:2)

应用的类型

三种类型的应用程序:本机应用程序,Web应用程序和混合应用程序。但有什么区别?

网络应用程序将在(几乎)所有智能手机上运行,​​而本机应用程序需要专门为每个操作系统开发(甚至针对不同版本的这些),并且混合动力版至少需要开发本机“容器”托管网络语言。

More info regarding the differences between these three apps.

用于创建混合应用程序的工具包

将Web应用程序转换为移动应用程序是通过将HTML,CSS和JavaScript包装在特殊容器中来完成的:通常是标准移动SDK提供的“Web视图”组件,以及一些额外的位,例如JavaScript API让开发人员访问Web视图组件未提供的设备功能(例如,访问设备的GPS,摄像头,手势和通知)。

其中一些包装器希望您使用他们的移动JavaScript框架,而其他包装器则允许您使用您喜欢的任何JavaScript框架。

工具包可用:

Adob​​e AIR for HTML / JS Developers

Alpha Anywhere

AMPchroma

IBM Worklight

英特尔XDK(以前称为appMobi)

KonyOne

PhoneGap / Apache Cordova(可能是使用最广泛的)

Sencha Touch 2

专属点

M项目

Trigger.io

More info regarding toolkit's for developing Hybrid App's.

答案 2 :(得分:0)

有一个非常强大的工具应该添加到列表中:Progamma的Instant Developer(Inde)。我曾经使用AlphaAnywhere开发并转移到Inde,从不回头。