【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Tabris 1.0:使用 JAVA 进行跨平台移动开发

  • 2013-05-06
  • 本文字数:1494 字

    阅读完需:约 5 分钟

经过三年的开发,EclipseSource 终于发布了 Tabris 1.0,这是一个支持 iOS 和 Android 的跨平台 Java 移动开发框架。Tabris 定位于企业,与其他移动解决方案不同的是,它使用了不同的方法:

  • 大多数编程工作都使用 JAVA 完成
  • 业务逻辑和客户端 UI 的二进制表示运行在服务器端的 Eclipse RAP
  • 一个很薄的客户端应用运行在移动设备上
  • 服务器端通过 JSON 格式与客户端通信,发送数据和命令让客户端 创建可视的 UI
  • 客户端使用原生组件生成界面
  • iOS 的客户端使用 Object-C 编写,而 Android 的客户端则使用 Java 编写

Tabris 自带了一个构建于的 Java SWT API 之上的 UI 工具包。该工具包增加了两个主要功能部件:页面(Page) 和动作(Action)。前者包含的是应用的基本内容,而后者主要用来执行用户的命令。下面是一个 Tabris 示例应用的截图,其中页面显示为红色,而动作显示为绿色:

页面可以互相链接并导航,而动作既可以是整个应用的全局动作,也可以是当前页面的局部动作。

在处理完一个 组件后,应用的服务器端会将一个JSON 片段发送到客户端,比如下面的例子是创建一个按钮:

客户端应用则会使用iOS 或Android 的原生组件渲染该按钮。

InfoQ 采访了 EclipseSource 的 Tabris 服务器端的团队负责人 Holger Staudacher ,以了解关于该框架的更多信息。据 Staudacher 介绍,Taris 定位于企业,而且需要一直连接到服务端:

Tabris 用于现场移动类应用。这意味着它最好工作在受控的环境中。我所说的受控的意思是使用固定的网络连接,诸如此类。我们的客户——如医院——所有的设备都连接到同一网络。此类应用程序通常是由企业开发的。

Tabris 不支持脱机工作。移动用户界面基本就是一个会话。因此,如果用户的设备断开了连接,则会话会变为无效。在移动客户端可以进行错误处理。我们 实现了标准的错误处理,比如重新发送 http 请求等等。但应用开发人员可以使用原生扩展加以扩充。

当被问及Tabris 是否适合开发一般应用时,Staudacher 说理论上是可以的,但那并非它的最佳使用场景 :

对于一般的应用,这意味着服务器的负载会很高。我们使用的是标准的Java EE 技术。所以, 面对这样的高负载,可以使用Java EE 集群机制。目前我们尚未测试数以百万计的用户负载。但从技术的角度看应该是可行的。

Tabris 支持许多 SWT 组件,还增加了对一些原生感应器(如摄像头和地理定位设备)的支持。

目前,Tabris 支持平板电脑,但这样的应用每次只能显示一个页面。将来会添加对多个页面的支持。此外,Tabris 可以扩展到其他移动平台,如果有动力的话,该框架获或许会支持 Windows。

在不久的将来,Tabris 团队打算增加如下功能:

  • 支持地址簿
  • 支持设备的不同方位状态(垂直或水平)
  • 支持用于处理客户端事件的客户端脚本
  • 支持 XCallbackUrl

根据 FAQ 所述,使用 Tabris 创建的应用能通过 App Store 部署,“只要你遵守 App Store 的规则”。在 Google Play 上有一个针对 Android 的示例应用

Tabris 并不开源,但企业授权用户能获得源代码。更多详情,请访问 EclipseSource 的价格体系页面

『号外』:JavaOne 2013 大会将于 7 月 22–25 日在上海世博中心举行,内容涵盖使用 Java SE 构建现代应用程序、打造针对下一代智能设备的移动和嵌入式 Java 应用程序、编制基于 Java EE 的复杂企业解决方案以及在云环境中安全、无缝地构建和部署业务应用程序等,报名或查看详情请点击

查看英文原文 Tabris 1.0: Cross-platform Mobile Development in Java


感谢臧秀涛对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-05-06 06:573133
用户头像

发布了 81 篇内容, 共 22.8 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

Photoshop 2024 (ps) Mac版安装下载

影影绰绰一往直前

2024西安国际嵌入式系统科技创新展览会

吹吹晚风

2024西安国际区块链技术与应用展览会

吹吹晚风

2024厦门国际数码印花工业技术展览会

吹吹晚风

2024西安国际机器人科技展览会

吹吹晚风

2024厦门国际服装科技装备展览会

吹吹晚风

什么是革命性技术eBPF?为什么可观测性领域都得用它

不在线第一只蜗牛

架构 服务器 ebpf

2024厦门国际纱线面料展览会

吹吹晚风

结对编程很可怕?掌握这几个技巧,让你的结对编程更易成功

敏捷开发

项目管理 敏捷开发 软件开发 极限编程 结对编程

IBM SPSS Statistics27破解版 v27.0.1.0中文版

影影绰绰一往直前

Weather Widget Live for Mac(时尚的天气预报软件) v5.1.0激活版

影影绰绰一往直前

全面解析项目基线及其制作工具

PingCode

项目管理 产品经理 项目基线

2024西安国际数据中心技术与设备展览会

吹吹晚风

2024厦门国际牛仔产业展览会

吹吹晚风

2024厦门国际流行服饰展览会

吹吹晚风

套餐 多样充值

IoTOS

IoT 物联网, eSIM安全 java 技术提升

MegEngine 版本最新发布!新增支持寒武纪思元系列 AI 芯片训练和推理

MegEngineBot

芯片 开源框架 寒武纪

为AI革命提供高级搜索能力!腾讯云大数据ES国内首发上线8.8.1版本

腾讯云大数据

ES

购买拍卖直播软件系统源码的风险与安全保障

软件开发-梦幻运营部

OmniReader Pro for mac(专业的电子书阅读器)v2.6.7激活版

影影绰绰一往直前

IntelliJ IDEA 2023.3.2 for Mac破解版下载

影影绰绰一往直前

2024西安国际航空电子及测试设备科技创新博览会

吹吹晚风

2024中国(深圳)国际智能晾衣架展览会

吹吹晚风

2024厦门国际服装贴牌加工展览会

吹吹晚风

一呼百应API实时获取商品详情的实现

Noah

什么是高防IP?哪些行业适合用高防IP?

Finovy Cloud

防火墙 网络攻击 高防IP 高防IP服务

PVP2 ProVideoPlayer2中文激活版下载

影影绰绰一往直前

Axure RP 9 for mac授权密钥激活版下载

影影绰绰一往直前

2024厦门国际毛衫及羊绒制品展览会

吹吹晚风

实时获取化工网商品详情API数据

Noah

音频修复和增强工具iZotope RX10 破解下载

影影绰绰一往直前

Tabris 1.0:使用JAVA进行跨平台移动开发_Java_Abel Avram_InfoQ精选文章