想知道钛合金加速器的功能吗?

时间:2012-01-27 10:47:25

标签: java titanium crud titanium-mobile

我们有一个Web应用程序,它使用MySQL作为数据库在Apache tomcat上运行(java / Java EE,Struts,Hibernate)。它已经启动并运行了很多年,所以我们有一个非常大的数据池(数百万行)。

我们需要将此网络应用程序转换为移动应用程序(跨平台,ios,Android),因此我们决定使用Titanium Appcelerator。

在实施之前我有很多顾虑:

  1. 我听说钛合金给你很好的gui,但功能呢?当用户单击按钮(从数据库发送/检索数据)时会发生什么? 我可以使用java来处理这个吗?

  2. 我见过通过数据库进行交互的例子,但是大概都使用PHP作为服务器端语言,但是没有人知道PHP。 虽然我们的团队有一些android exp(所有类型的JSON,小客户端应用程序),但我不确定它是否有用。

  3. 目标是将巨大的CRUD Web应用程序转换为跨平台的移动应用程序(我不想在服务器上丢失java)。 Titanium appcelerator可以处理这个吗?

2 个答案:

答案 0 :(得分:0)

将应用视为独立的内容。只要您获得JSON或XML(或者您喜欢的其他内容),那么另一端并不重要。

Titanium Appcelerator是一个JavaScript工具,可以处理(内置)JSON和XML。

回答你的问题:

1:功能非常好。它不能由Java完成,但是您将获得处理click / swipe / press / doubleclick等事件(在JavaScript中)。事件总是在文档中定义。在您的情况下,button。您可以看到它可以处理的事件以及您可以设置的属性。

文档页面添加按钮并进行点击事件的示例。

var button = Titanium.UI.createButton({
   title: 'Hello',
   top: 10,
   width: 100,
   height: 50
});
button.addEventListener('click',function(e)
{
   Titanium.API.info("You clicked the button");
});

2:无论您使用哪种服务器端语言,只要您导出可用内容(JSON / XML),Titanium就可以使用它。它就像一个客户。不用担心。

3:如上所述,你可以随心所欲地做任何事情。在服务器端,您只需要编写一个可以处理所有内容的API。

我希望这会消除你的顾虑。如果您在其他问题上需要更多帮助,只需在SO上输入一个新问题,我就会看到它们经过。

答案 1 :(得分:0)

正如Topener所说,Titanium能够满足您的要求。我想指出一些更基本的东西:

  

我们需要将此网络应用转换为移动应用(..),所以我们决定使用Titanium Appcelerator。

我对这种推理感到有些惊讶,有点“我们需要一辆车,所以我们决定买一辆日产汽车。”为什么不是福特,霍顿或保时捷?

事实上,有超过30种技术声称能够进行跨平台移动开发。在去年的过程中,我深入研究了其中的16篇,以了解我的硕士论文。

我建议你看看其他两种技术。为什么?您正在将网络应用转换为移动应用。为什么不考虑一个允许您使用Web技术编写应用程序UI的框架?毕竟,您可能能够移植一些现有的UI代码。

  • PhoneGap(免费,现在由Adobe拥有):您使用JavaScript实现整个应用程序,基本上是作为WebApp,但您可以获得可以使用AppStore分发的本机可安装二进制文件。易于与SenchaTouch HTML5-UI结合使用。

  • Rhodes(免费,现在由Motorola Systems拥有):您在HTML5中实现UI,在Ruby中实现逻辑。 Rhodes提供非常好的 Object-Mapper和Sync功能。由于您似乎需要处理相当多的数据,因此这可以提供超过Titanium的SQLite数据库的显着优势。学习一点红宝石不应该花费你一个多星期左右。

如果您肯定需要原生用户界面,那么AQUA-Framework可能值得一看......但我没有测试过那个。