浅谈一下iPhone OS 3.0

其实这篇文章迟到了——本来Apple昨天就发布了,只是因为毕业的事,人民决定将其延期至今天 じぃ〜

iPhone OS 3.0系统可谓非常强大,首先对于开发人员来说,3.0将会使用新的SDK,官方声称新增了1000个新API,使得开发人员有更多的资源可以使用;此外开发人员可以使用程序内购买(In-App Purchase),也就是说相较于现在一本书得要出一个程序的方式,新的In-App Purchase可以允许开发者仅仅开发一个读书程序,然后在读书程序里面放出书的资源库,用户仅仅需要下载这一个读书程序然后根据自己的需要选择要下载的书即可,相较于原来如果想要买5本书需要购买5个程序的方式,今后只需要一个程序就可以解决;当然,不仅电子书,包括游戏也可以推出高级关卡在游戏内额外收费、游戏内收费物品、甚至GPS分区域收费地图包等等;除此之外,还有开放了的音乐库,也就是说一个程序可以随意调用你的iPhone/iPod Touch里面的歌曲;在2.0 beta 4突然取消而现在又再次回来的推送式提醒服务(Push Notification Service);嵌入式地图服务,也就是现在程序可以调用google maps的资源在自己的程序里面潜入地图;点对点连接,也就是说现在可以在没有网络连接的情况下通过蓝牙进行用户和用户的连接,比如局域范围内的用户联机对战游戏等等(因为使用蓝牙,所以这项功能对于iPod Touch无用);以及还有附件支持,也就是相对于原来附件只能扩展iPhone的功能,现在附件还可以内建应用程序,比如一个测量血压的附件就可以内建一个血压测量的软件,当连接至iPhone/iPod Touch之后就可以使用这个软件配合这个附件测量血压等等,对于开发人员来说,3.0版的SDK可谓非常强大

不仅开发人员,对于一般用户来说,3.0系统也可谓有了非常大的改进,官方声称提供了100个新特性,首先是终于解决了“老大难”的大约全世界的手机可能就只有iPhone没有的复制粘贴功能,新的3.0系统可以对文字、图片甚至网页框架布局等Rich Text进行剪切、复制和粘贴功能,并且这个功能也是开放性,不仅苹果自己,第三方开发者也可以调用这个数据,当然也提供跨程序支持;此外是增强的搜索功能,现在所有第一方程序均提供了搜索功能支持;并且在主界面里面还增加了一个Spotlight界面,也就是说现在iPhone OS和Mac OS X一样有全局搜索支持了,在iPhone OS的Spotlight界面里面搜索一个数据,系统就能搜索内部所有的文件;另外现在终于提供了MMS支持,用户可以通过MMS发送照片、联系人名片、音频文件和地址信息等等,当然需要运营商的MMS支持,并且可能产生比SMS更多的费用;另外提供了所有第一方程序的宽屏支持,原来只有Safari和Music等少数程序在将机体横置之后可以重新布局页面以适应新的屏幕长宽比并提供一个更宽的键盘,现在苹果将其所有软件都追加了这一支持,比如邮件程序、记事本程序等等;此外还增加了一个新的软件Voice Memo,对于想要记下来的东西,除开文字的方式,今后还可以使用声音的方式了,等等等等

简单说说自己的看法:首先个人并非程序开发者,所以大多数SDK当中提供的特性个人并非多么感冒,但个人确实对Push Notification Service这个功能期待了很久,因为iPhone OS不允许后台程序,因此特别是对于一些IM软件来说这是一个致命伤——不运行着程序就无法收到消息提示,原来2.0的时候苹果就说要提供这么一个支持,但后来beta 4的时候突然取消了这个,苹果官方的说明是很多第三方服务发送的推送式提醒远远超过苹果的想象而导致服务器处理能力不足,不管怎么说这个功能终于要在3.0的时候回归了;此外开放的音乐库这个特性似乎也挺有趣,通过这个特性,EA的新游戏The Sims 3的iPhone版就可以通过购买音响的方式,在游戏里面来聆听自己的iPhone/iPod Touch里面的音乐,等等;此外在面向用户的100个新特性里面,剪切复制粘贴这个不得不说是一个很大的改进,而且增强的搜索支持对于偶来说的魅力非常大——不管怎么说偶的音乐库可是3561首歌9.11GB连续播放时间约6天呢,偶一直对偶的Touch不能搜索音乐库这个感到十分之不爽,经常要找一首歌需要找N年,然后就是全方位的横置支持,原来一直在编写邮件的时候因为键盘太小而感到十分不爽,虽然今后仍将继续这种情况(触屏始终是触屏,在手感上永远不及物理键盘),但至少更宽的键盘可以更大限度减少输入错误的几率就是了,此外还有一个刚刚没有说到的,3.0系统的Calender提供了Subscription和CalDAV支持,这个个人也是非常期待——iPhone OS和原来的iPod不一样,原来的iPod只要是iCal里面有的东西都会一股脑传进去,但iPhone只会传送本地数据,也就是说通过iCal编写的CalDAV日程表因为数据是存储在远端服务器上,所以不会同步至iPhone/iPod Touch上,于是为了偶的Touch能正常提醒偶,人民的Google Calender都一直放着没敢动,今后人民终于可以玩Google Calender而不用担心Touch无法使用了
但令人不爽的地方也仍然存在,比如说吧,偶很早以前就一直说过的,iPhone OS有时候强大的无边,但弱智的地方也弱智的无底,所有iPod都支持iCal的To Do List,居然唯独iPhone OS不支持;虽然有第三方的To Do软件,但因为和iCal没有互换性,因此实际上人民拿来没啥太大意义不是么?当然也有人说Leopard的Mail不是支持To Do,用MobileMe帐户编辑To Do不就可以传到Touch上了么,但是通过Mail编辑的MobileMe帐户的To Do List第一和iCal也没有互换性,所以在iCal上无法显示;其次这个不管怎么说只是一个邮箱的To Do List,人民既不习惯使用邮件程序来检查人民有什么待办事项,而且通过MobileMe帐户编辑的To Do也因为是邮箱帐户所以不支持其他iPod,这一点上人民一直觉得苹果实在傻到无底了,新的iPhone OS 3.0似乎也并没有提供这个支持的打算,至少老A没有说到任何关于这个的东西;然后就是初始界面的触摸手势支持,人民很早之前就说过了iPhone/iPod Touch和所有的iPod最大的区别就是没有Click Wheel,转而使用了全触屏,因此按键的位置不固定也没有一个通过触摸能感觉到的坐标,因此在换歌的时候必须要盯着屏幕还,否则成功率大约只有30%左右;而且初始界面,也就是刚打开屏幕但是还没有解锁的那个界面的歌曲控制键位置也和音乐播放程序里面的按键位置不同,这个没有熟悉的人在刚开始也可能会不习惯;但是不是说这个就无法解决了呢?偶并不这么认为——触屏也有触屏的好处,那就是像鼠标一样,可以支持手势,使用手势有什么好处?最大的好处就是像刚刚说的,在不看屏幕的情况下也可以进行操作,比如双击Home键打开屏幕但并不解锁而是进入到歌曲操作界面的时候,可以手指在屏幕上向右滑动作为切换至下一曲,向右滑动并在末位置停住不放表示快进,向上滑动表示增大音量,双击屏幕并在第二次按下屏幕后不放在屏幕上顺时针花圈表示手动控制播放位置(就像Click Wheel系iPod按下Center一次之后手指在Wheel上滑动来操作的那个一样)等等,和在界面上表示出一个控制键只有一个按键位置不同,触摸手势可以有点击和滑动的组合,因此在可以实现更多的功能的同时却又并不加大操控的难度(只要组合设置的合理)等等,总之这种手势操控的实现并无技术难度,别说新的SDK,就是现有的2.0版SDK都可以轻松做到,因此个人认为如果iPhone OS对歌曲操控提供触摸手势的支持将会在很大程度上改进iPhone/iPod Touch的盲操作易用性

以上 就是本人对这次苹果发布iPhone OS 3.0 beta系统的一些看法

Author: 星野恵瑠

Mac user, Niji-Ota, Chinese, Now working in Japan at MAGES. Inc., Future's aim is that one day my name can be listed in Wikipedia

2 thoughts on “浅谈一下iPhone OS 3.0”

Leave a Reply to 开心凡人 Cancel reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

(;;) (:D) (!!!!) (……) (^o^;) (==) (OoO) (=v=o) more »Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).