【官方地址】
http://developer.appcelerator.com/blog/2011/09/titanium-mobile-for-web-developers.html
你是不是已经决定开始使用Titanium Mobile,但是不知道从何下手?你现在是一个Web开发者,懂JavaScript,但是感觉用它做一整个应用有些害怕?那么这篇文章将会给你帮助。
Titanium Mobile是什么?
Titanium Mobile首先是一个SDK。和一些浏览器提供一些扩展API一样,Titanium Mobile也同样扩展JavaScript(JS)从而允许你访问原生平台元素的接口。Titanium Mobile运行在一个native窗口上下文中,而不是一个浏览器窗口,从而它也存在DOM。其实,Titanium Mobile中的JS的运行方式更类似于服务器端(server-side)的JavaScript,比如node.js,但是它提供浏览器的实现。从一开始在思想上有这个认识,会为你节省很多麻烦。
在社区中已经存在以Titanium为基础的一批开源Framework,所以Titanium Mobile自身严格来说不是一个Framework。
理解Titanium中的UI设计
在网页中,你可能会用到DOM(Document Object Model)中的DIV来创建UI,并且提供多个页面。在Titanium中也适用了这个理念,但是不同的是,在移动开发中使用“view”来代替各种标记元素,窗口,以及页面。那么在设计应用的页面布局时,原则上来说我们应该指定绝对位置,当我们适用这样的方法时,就能缩短CPU的处理时间,从而优化性能。虽然那么说,但是相比绝对位置来说,我们也可以选择水平和垂直的相对位置来指定页面布局。这样页面布局就很方便。
在Titanium中,也提供了控件,比如按钮,滑块,开关,标签页等等,他可以使用户很直观的使用应用。
MVC是否还有意义
在社区中,已经存在一些开发好的MVC风格的框架,也欢迎大家试试(通过谷歌你能找到很多)。然而,我们认为,使用模块化的结构更容易,比如我们提供的例子应用
Tweetanium
Titanium和window的URL
很多开发者查看我们的示例应用
KitchenSink 中使用了URL属性,认为那是“最佳实践”,继续沿用它做类似于web页的应用。这里让我来解释为什么你不能按常规来使用这种方法开发应用。
对于window来说,定义URL属性有点儿类似于基于浏览器Web应用,它允许你打开一个新页面。
和浏览器一样,移动应用也会在新的cotext上被运行,换句话说,它就像你应用中的一个单独的应用程序。这样一来的结果是你定义的变量在另外的context中将不能再使用。为了解决这个问题,浏览器使用cookie来存取整个域下的数据,同样,你的应用也能设置属性保证整个应用都能够取到数据。这样的缺点是,即使你不需要的时候,数据也存在,除非你删掉它。而模块化设计方法将会使数据自动销毁。
有时候改变context也是个好事,比如在KitchenSink中,它对于保证变量值存在一个窗口中,而不会影响到下一个窗口是很有帮助的。能使开发者一看就知道是怎么回事。
所以,开发者应该做什么?这里我再次把
Tweetanium推荐给你,它是一个很棒的例子,很好的展示了如何设计一个单context的应用。
跨平台测试
尽管被大家普遍的误解,但是Titanium真的不是一个“一次编写,随处运行”解决方案。虽然你可能会觉得这令人惊讶的,但他确实是有意的,也有很好的理由!不同的平台都会有他们的强项和弱项,所以,如果我们开发的应用什么地方都是一样的,他也就削弱了平台的强项,从而远离了他们的目标市场。比如,在iOS应用中,标签栏是位于屏幕的下方,但是完全不同的是,在Android中,标签组是在上方的。然而,虽然你需要适应在用户接口上的差异,但是所有的平台上大多数的业务逻辑是一样的。总的来说,还是要考虑跨平台测试(不想ie6和safari,更像firefox和chrome)。
总结
需要记住的一点是,Titanium的目标不是鼓励你把现有的web应用直接移植到移动电话上来,而是它提供了一种你需要的工具,通过你知道的语言来创建应用,给你的用户一个真正原生,更加逼真的应用体验。
一些有用的链接
分享到:
相关推荐
Titanium Web代理 用C#编写的轻量级HTTP(S)代理服务器。 在此处报告错误或提出问题。 要获得编程帮助,请使用带有标签Titanium-Web-Proxy的 。 产品特点 采用服务器连接池,证书缓存和缓冲池的多线程全异步代理 ...
**Titanium中文版开发手册** Titanium中文版开发手册是一份专门为中文用户编译的开发者指南,旨在帮助熟悉中文的开发者充分利用Titanium框架进行移动应用的开发。Titanium是一个开源的JavaScript平台,允许开发者...
如需编程帮助,请使用带有标签 Titanium-Web-Proxy 的 。 特征 采用服务器连接池、证书缓存和缓冲池的多线程和异步代理 查看、修改、重定向和阻止请求或响应 支持相互 SSL 认证、代理认证和自动上游代理检测 在 ...
【钛合金(Titanium)插件开发初探】 在移动应用开发领域,Titanium 是一个流行的选择,它允许开发者使用 JavaScript 来构建原生的 iOS 和 Android 应用。Titanium 的核心理念是通过跨平台的 JavaScript API 提供与...
Titanium Mobile SDK 3.1.0 是一个用于构建原生移动...虽然这个离线版的Apidoc在视觉呈现上可能不那么吸引人,但其内在的价值在于详实的文档和实用的信息,对于任何希望掌握Titanium开发的程序员来说,都是宝贵的财富。
这是一个适用于 iOS (iPhone/iPad) 的 Titanium Mobile 模块,它允许在您的应用程序中内置一个 HTTP 网络服务器。 基本安装说明 请遵循提供的指南。 变更日志 见。 访问保管箱模块 要从 JavaScript 访问此模块,您...
《TitaniumBackup_6.0.5.1:专业版的安卓备份与恢复解决方案》 在安卓设备的管理和维护中,数据备份与恢复是至关重要的环节。TitaniumBackup_6.0.5.1,这款专业版应用,以其强大的功能和高效的操作,为用户提供了...
【钛合金-WebClient:Appcelerator Titanium的Web服务客户端】 在移动应用开发领域,Appcelerator Titanium是一个广受欢迎的框架,它允许开发者使用JavaScript语言来构建原生的iOS、Android以及Windows应用。...
Titanium Web浏览器 用Rust编写的键盘驱动的Web浏览器 Titanium用Rust编写,并使用WebKit2GTK渲染网页。 它的灵感来自于Vimperator和qutebrowser.py。 屏幕截图 特征 类似于vim的键绑定 按照键盘上的链接/滚动 ...
Titanium开发者平台是一个完全免费且开源的应用程序开发框架,它允许开发者使用自己熟悉的Web技术(如JavaScript、HTML、CSS、Python、Ruby以及PHP)来构建跨平台的应用程序。该平台不仅支持移动设备(如Android和...
[Packt Publishing] Appcelerator Titanium 移动应用开发教程 (英文版) [Packt Publishing] Creating Mobile Apps with Appcelerator Titanium (E-Book) ☆ 图书概要:☆ Develop fully-featured mobile ...
Android和iOS的竞争日益激烈,开发者开始关注跨平台开发工具和技术,如PhoneGap和Titanium,以适应多设备环境。 2. **云计算的崛起**:2012年,云计算逐渐从概念走向实际应用。Amazon Web Services(AWS)等云服务...
### Titanium Mobile API 知识点详解 #### 一、Titanium Mobile API 概述 Titanium Mobile API 是一款由 Appcelerator 公司提供的用于跨平台移动应用开发的强大工具包。该工具允许开发者使用 JavaScript 编写应用...
通过Titanium,开发者可以利用Web技术(如HTML、CSS和JavaScript)构建功能丰富的、性能优异的原生应用。 在`node-titanium-sdk-master`这个压缩包中,通常会包含以下关键组成部分: 1. **源代码**:这是核心的...
Titanium 是一个强大的开源JavaScript框架,专为开发原生移动应用而设计。它允许开发者使用JavaScript编写代码,同时能够利用iOS、Android等平台的原生功能。在涉及到“titanium 打开本地网络”的话题时,我们主要...
TiInspector, 通过 Chrome DevTools调试 Titanium Mobile 应用程序 #Ti 检查器Ti检查器允许在 Chrome DevTools web界面中调试 Appcelerator Titanium 应用程序。工具通过将命令和消息转换为 Chrome 调试协议和 ...
Titanium Backup_3.7.4捐赠完全版
### Titanium学习教程知识点详解 #### 一、Titanium简介与特点 **Titanium**是由Appcelerator公司开发的...无论是对于希望快速入门的初学者还是寻求进阶的高级开发者而言,Titanium都是一个值得深入了解的强大工具。