【问题标题】:Wondering about capabilities of titanium appcelerator?想知道钛加速器的功能吗?
【发布时间】:2012-02-20 08:59:28
【问题描述】:

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

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

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

  1. 我听说钛可以为您提供非常好的 gui,但是功能如何呢?当用户单击按钮(从数据库发送/检索数据)时会发生什么? 我可以用java来处理这个吗??

  2. 我已经看到了通过数据库进行交互的示例,但几乎所有人都使用 PHP 作为服务器端语言,但这里没有人知道 PHP。 虽然我们的团队有一些 android exp(各种 JSON,小型客户端应用程序),但我不确定它是否会有所帮助。

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

【问题讨论】:

    标签: java titanium crud titanium-mobile


    【解决方案1】:

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

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

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

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

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

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

    • Rhodes(免费,现在归摩托罗拉系统所有):您用 HTML5 实现 UI,用 Ruby 实现逻辑。 Rhodes 提供了非常好的对象映射器和同步功能。由于您似乎有相当多的数据要处理,因此与 Titanium 的 SQLite 数据库相比,这可能具有显着优势。学习一点点红宝石应该不会花费您超过一周左右的时间。

    如果您确实需要原生 UI,那么 AQUA-Framework 可能值得一看……但我还没有测试过那个。

    【讨论】:

      【解决方案2】:

      将应用程序视为独立的东西。另一端是什么并不重要,只要你得到 JSON 或 XML(或者你喜欢的其他东西)。

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

      回答您的问题:

      1:功能真的很好。它不能由 Java 完成,但您会得到处理单击/滑动/按下/双击等的事件(在 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 上输入一个新问题,我会看到他们通过。

      【讨论】:

      • 我们有 servlets/java 来处理纯 web 应用程序中的服务器端脚本,我们可以通过钛 (javascript) 创建一个好看的 gui,但是,我们可以使用 java 来处理所有 db(MYSQL)相互作用。以及我们想用java写所有(点击blah buttun之后)..这可能吗??..我们不想使用php,python,ROR..?
      • Java 作为服务器端很好。您只需要设置服务器端和应用程序之间的通信。应用程序中没有Java,或应用程序中的mysql talk。您必须为其创建一个网络服务
      • 不能没有webservice?例如在 php 中我们可以像 loginBtn.addEventListener('click',function(e) { if (username.value != '' && password.value != '') { loginReq.open("POST","@ 987654322@); var params = { username: username.value, password: password.value }; loginReq.send(params); } else { alert("需要用户名/密码"); } });
      • 确保您可以创建没有 Web 服务的应用程序。您到底想在这里实现什么目标?
      • 我们有一个 web 应用程序项目,我们已经使用 java servlete(java ,jsp,struts,hiberrnet,mysql) 构建了这个产品。所以现在我们将为移动应用程序构建相同的应用程序一些模块,所以我们使用的是钛 android,我们需要在钛 javscript 到我们的服务器数据库(mysql)之间建立连接,所以我们正在寻找使用 java 编写服务器端应用程序,因为已经在我们的服务器中运行 appache serever,所以我需要知道如何建立连接(我用谷歌搜索,大多数示例仅使用 php,但我需要使用 java servelet
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多