随着通信业、移动设备产业、互联网产业的快速发展,如今我们已经可以明显地感受到,我们身边的移动设备越来越多,越来越智能,价格越来越低,也越来越与我们的生活密不可分。去年底在支付宝做分享时,我曾说过一句“Mobile WEB风暴,即将席卷中国”,现在看来,我们似乎已经开始接受风暴的洗礼了吧。

Mobile WEB,曾经或者现在,我们或许习惯性地称之为“WAP”,其实叫什么不重要,充其量只是个名字而已——就像Brian Suda在《Introduction to the mobile web》所说的那样——重要的是,我们到底该如何看待它,以及进行哪些思考。如今的“WAP”,早已不是当初只有一些超链接和一个LOGO的WML时代了。在《Mobile Design and Development》一书中,Brian Fling将如今的移动时代称为Mobile 2.0(对应WEB 2.0的叫法),这是个充满了富交互性的智能Mobile WEB时代。在这个时代中,我们利用手中的武器——前端技术,通过不断强大的移动浏览终端,可以实现更多精彩的用户体验,可以让手中的移动设备做出更多桌面设备办不到的事情。
(注意:Mobile 2.0并不同于WAP 2.0。它是指整个移动互联网行业的时代特征,是个广义的叫法。而WAP 1.0主要指WML规范时代、WAP 2.0主要指XHTML-MP规范时代,这种定义是偏技术领域,是相对狭义的)
与桌面WEB前端开发不同的是,Mobile WEB前端开发需要关注更多更杂的东西,并且技能发展的倾向性也会与前者略有不同。移动设备的种类太多,更新频率也真的太快了,因此相应的内置浏览器也会随之发生变化,这些复杂程度会让人觉得眼花缭乱。而对于第三方浏览器,在不同平台下的表现不尽相同,对WEB规范的支持程度也不相同,并且占有率、版本更新频率也并不稳定,同样充满了很大变数。以上这些问题,都是Mobile WEB前端开发领域特有的,并且是需要不断地研究和探索的。
阅读全文 »
- GIF、PNG、TIFF最大尺寸上限是300万像素
也就是说,确保width * height ≤ 3 * 1024 * 1024。
- JPEG二次采样(颜色压缩)后的最大尺寸上限是3200万像素
- canvas元素的最大尺寸上限是3百万像素
canvas对象的默认宽高是150 x 300像素
- 单个资源文件必须小于10MB
适用于HTML、CSS、JavaScript、非流格式媒体
- JavaScript执行时间限制在10秒之内。
如果脚本执行时间超过10秒的话,Safari会在一个随机位置强制停止执行,可能会导致意想不到的后果。
- 一次性打开最多的页面数量是8个(慎用Framesets)
- iPhone OS 1.1.4以下版本中,JavaScript执行时间限制在5秒内,大小限制在10MB内。Canvas元素的限制跟桌面Safari一致。
- iPhone OS 2.2.1以下版本中,所有frames的总数之和需要小于200万像素,也就是说,frames的宽x高x数量≤1024x1024x2。
- iPhone OS 3.0以上版本中,该限制变更为单个的frame上。
ref:Safari Web Content Guide
本文译自quirksmode.org,原作者为Peter-Paul Koch(PPK)。
原文链接:http://www.quirksmode.org/blog/archives/2010/04/mobile_browsers.html, 转载请注明以上信息。
我给目前正在测试的15款移动浏览器做了一个列表。
在当前移动浏览器如此错综复杂、变幻莫测的形势下,这或许会对给你一些启发。
经常有人问我:“我到底该测试哪一个移动浏览器?”,这个问题意味着,你应该搞定哪些设备。现在我来尝试回答这个问题。
一个移动测试环境
在过去的一年内,我非常幸运。沃达丰不仅有大量的移动设备(译者注:PPK于2009年开始在沃达丰担任顾问和培训师的工作),也有一些人士会提供比较靠谱的建议。比如我需要一台非HTC的带轨迹球的Windows Mobile设备,他们通常会告诉我应该去测哪一台机器,以及为什么这样选择的原因。
但并非每一个人都是这样好的情况。所以,干脆地说,这只是我的建议。
iPhone 和 Android
我假设你已经有了一台iPhone或Android手机。用它来测试你的网站(你可能已经这么做了)。看到最牛B和强悍的移动浏览器,你可能会有很多想法和灵感。如果你的站点不准备支持Safari或Android,那么忘了它吧。
如果你没有iPhone或Android,去借一台。作为一个西方世界的Web开发者,至少也应该会认识拥有一台这样的电话、并愿意(偶尔)用它来测试一下东东的人。
Safari iPhone和Android Webkit并不是完全相同的浏览器,但至少他们都是自家人,特别是当你测试中级到高级的CSS或JavaScript时,他们的处理结果可能会一样好。当然,不包括那些小BUGs。
阅读全文 »
前一阵参与了一个基于IPTV的项目,分享一下这次项目的一点收获。
首先来恶补一下IPTV的一些基本概念和介绍吧:
IPTV,全名网络协议电视(Internet Protocol Television),是宽带电视(Broadband TV)的一种。IPTV是用宽带网 络作为介质传送电视信息的一种系统,将广播节目透过宽带上的网际协议向订户传递数码电视服务。由于需要使用互联网,IPTV服务供应商经常会一并提供连接互联网及IP电话等相关服务,也可称为“三重服务”或“三合一服务”(Triple Play)。IPTV是数码电视的一种,因此普通电视机需要配合相应的机顶盒接收频道,也因此供应商通常会向客户同时提供自选影像服务。
上文中所提及的“三重服务”或“三合一服务”,其实就是我们通常所说的“三网融合”,是“物联网”发展中很重要的一步。

好了,基本概念普及到这里,需要了解更多,可以移步百度百科或维基百科等各种百科来查看相关介绍。
你应该已经清楚,IPTV最重要的两个部件是“机顶盒”与“电视机”,机顶盒负责处理用户与IPTV的交互事件、解析网页、处理IP数据和视频流以及视频的解码等功能,相当于PC中的主机;而电视机最主要的作用是显示视频图像,相当于显示器。我们要做的网页,是要经过机顶盒中的浏览器进行解析处理,然后输出给显示器来显示的,所以机顶盒是决定了我们开发过程的关键因素。

其实,机顶盒的软件技术架构,与移动设备有很多相似的地方,因为都具有相似的特性:迷你、便携、特定功能,因此注定了其内嵌的操作系统和软件。在设计和开发之前,我们务必要搞清楚,这些内嵌的操作系统和软件的特性,摸清楚这些,我们才可以有针对性地进行最完整设计和开发。下面是一个相对理想化的前端开发步骤模型:
- 基本UA探测+研究技术规范白皮书(关键)
- 指导UI设计
- 前端开发
- 兼容性测试+调试
我们可以发现,这个步骤与我们“Mobile WEB前端研发”步骤非常相似。其实,对于一个未知的跨平台的设备领域,我们都可以采取这个步骤来做开发,它可以保证最终开发的结果是最具针对性和兼容性的。因此,第一步的研究阶段是最关键的。
阅读全文 »
移动嘉年华!
设备动态:
应用动态:
产业动态:
设计:
开发:
好站推荐:
Expatliving:http://m.expatliving.sg/
介绍:便民生活类的社区站点,聚焦外籍人士在新加坡的生活:购物、餐饮、娱乐、手工艺品等。
特色:这就是之前介绍MooTouch时,其作者设计的移动站点,站点中全面应用MooTouch框架,整站Ajax异步无刷新。几乎可以完全模拟本地App应用程序,他做到了!快用你的iPhone体验一下吧。
Comments