TomLion

tail -f life.log and tar -cf ideas.tar ~/brain/ideas

JavaScript iPhone Apps

按:此文为John Resig的JavaScript iPhone Apps一文的翻译稿。John Resig是个必须要认识的牛人,JQuery框架的主创人员,Mozilla基金会的JavaScript布道者(Evangelist)。这些名头其实也不算什么,更让我倾心折服的是此人的精力,其名下有76个项目,涉及范围非常之广。牛人的影响力自然不一样,所以此文的留言同样很精彩,应该基本囊括了目前使用JavaScript开发iPhone应用涉及到的框架,不可不看。
------------------------------------------------
我一直在关注iPhone的开发。我想知道如果开发一个可下载的javascript应用/iPhone应用,可以有哪些选择。在做了一些研究之后,我找到一些解决方案,有些简单,有些需要些Objective-C的知识。
在讨论具体的解决方案之前,需要注意的是,如果你要进行正式的iPhone开发的话,还是需要学习下Objective-C. 和正常模式开发的应用相比,所有的这些选项都不能提供全部功能。
JiggyApp
在2007就进入JavaScript的iPhone应用开发市场,使用需要“越狱”。
和大多数典型APIs不同,JiggyApp提供开发应用的完整API。而且代码也可能是相对易用的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Plugins.load( "UIKit" );
 
var window = new UIWindow( UIHardware.fullScreenApplicationContentRect );
window.setHidden( false );
window.orderFront();
window.makeKey();
window.backgroundColor = [ 0.8 , 0 , 0, 1 ];
 
var mainView = new UIScroller();
mainView.contentSize = [ window.bounds[ 2 ] * 2 , window.bounds[ 3 ] * 2 ];
mainView.backgroundColor = [ 0 , 0 , 0 , 0 ];
 
window.setContentView( mainView );
 
var [...]

使用JavaScript为iPhone/iPod Touch开发应用

本文为《Professional iPhone and iPod Touch Programming》一书的摘译。
这本书介绍如何使用HTML+CSS+JavaScript来开发应用,不涉及使用cocoa touch layer来开发native的程序。

HTML/XHTML (HTML 4.01 and XHTML 1.9, XHTML mobile profile document types)
CSS (CSS 2.1 and partial CSS3)
JavaScript (ECMAScript 3, JavaScript 1.4)
AJAX (e.g., XMLHTTPRequest)
Ancillary technologies (video and audio media, PDF, and so on)

这些代码运行在apple为iphone定制的mobile safari,同样使用webkit内核。
你可以认为Mobile Safari是Mac和Windows平台下的Safari的近亲,但两者并不一样,譬如Mobile Safari支持的CSS和JavaScript功能并不如桌面版的完整。
Mobile Safari和iPhone的本地应用有些本质不同
性能: 基于Safari的应用的运行效率不如本地应用,有两个方面:开发语言的执行效率以及通过Wi-Fi以及EDGE网络的操作。然而可以通过优化达到可以接受的运行效率。
启动:内置应用通过Springboard启动。而web应用只能通过输入URL或者通过Bookmark列表来启动应用。【注:现在已经可以在Springboard启动了】
UI: 可以通过HTML CSS来模仿原生应用的界面效果,唯一的限制就是Mobile Safari底部的工具条。
为iPhone开发应用的四个等级
1.兼容iPhone的网站。一个和iPhone兼容的网站,避免使用iPhone不支持的技术,包括Flash,Java以及其他插件。页面的结构最大程度使用块和列,方便用户在网站中移动和缩放。
2.为Safari优化的网站。在等级一的基础上为Safari提供进一步的优化。譬如使用增强的WebKit CSS特性
3.iPhone专属的的网站。根据iPhone的可视窗口大小对网站做裁剪,为用户提供更好的使用体验。【包括增加按钮大小等】
4.类本地应用。最后是专为iPhone设计的,模仿了本地应用程序UI设计的应用。设计的一个目的就是尽可能不让用户感觉到是在一个浏览器环境里。并且,一个成熟的iPhone应用会和iPhone的服务,包括电话,邮件,Google Maps等紧密集合。
手指不是鼠标 【推荐看apple的iPhone视频】
鼠标有左键,右键,滚轮,以及移动鼠标。相对照的是,指头可以有Tap,Flick,拖动以及捏(pinch)

Finger Gestures

Gesture
Result
Web site
App

Tap
Equivalent [...]

关于我

程序员. 暂居上海. 目前关注平板和电子商务. 用Google, Mac.

Email/Gtalk: qycpublic [AT] gmail.com

订阅我的博客

搜索

管理