秋高气爽,创想时空。笔者参加在798 D-park召开#谷歌创想时空#。感觉不错,分享一下所见所闻所得。
现场篇:
当天一大早就赶到会场。果然是google创想时空,签到处就弥漫着创意,墙壁天花板布满google创意logo,琳琅满目,瞬间让你进入遐想。前台一排美女,笑语相迎。不信,有图,有真相。
签完到,进入主会场,首先是g+社区体验,用google的彩带环绕立体,下面是各色美食。用户体验就是好,让没吃早餐的攻城狮们情何以堪。
会场的分布,是根据google的几个业务线划分。
最吸引眼球的是:
以为是google的无人驾驶技术呢,其实是展示googleMaps的街景技术。还别说,坐上车,驰骋在巴黎城,好是浪漫。不由感慨,这些数据,得花多少银子呀。
随后,来到youtube展区。展区的MM,介绍youtube不单单是视频,而且能够和用户互动,有情感化的交换,让用户join进去。
Chrome 展区,体现了各终端下Chrome,对HTML5支持体验。同时看到了Chrome本本,体验一下真正的上网本,感觉不太适应,想想一台电脑,只有浏览器,啥感觉?
下一个,Google Search 就不多说了,传统强项。
来到g+ 中间可以体验g+社区的服务,值得一提的是, hangout,可以多人视频会议,参与你感兴趣的话题,充满开放、分享。有点像 OpenPatry online版。
还有一个展区(Google Art Project),让人瞠目结舌:把全世界著名博物馆、美术馆的名画以70亿像素的高清晰度呈现于互联网。感兴趣可以体验一下 http://www.googleartproject.com/ 。能看到油画中油彩缝隙下画布的纹理。
其他展区就不一一细说了。还是上干货吧。
技术篇:
主要是一个主会场,两个分会场。
主会场:主要是讲了一些google IO大会情况,新技术动向,比如可穿戴设备、智能家电等。Chrome对HTML5支持,以及html5本身研究。Android平台技术、android 4.1的新特性。google对开发者的重视,有很多通道可以直接和专家对话:1、 android 官网获取android的动态、2、youtube dev频道最新技术的教学视频3、google+的groups 世界级开发者社区4、G+ Hangout On air 和专家对话。貌似很多通道都被墙掉了。旁边一个哥们说:“好服务都被和谐掉了,能和谐吗?”。Google也知道,国内开发者需要才能参与进去,特意为国内准备了http://www.chinagdg.com/(不用翻,笔者逛了逛,论坛刚刚起步,没啥内容)。请发邮件到[email protected]获得翻强软件。
分会场二:介绍android技术。
主讲人是负责google Play的香港帅哥,国语一般,但是干货不少。主要是讲了android现状和趋势,android4.1新特性、android 产品设计、android 应用在官方market的推广。
结合当天的讲座笔记和官网4.1文档,其他对4.1的介绍的文章。整理了一下4.1的新特性:
1、 使用界面触摸反应更灵敏、更快,更顺畅:
具体如下:(参见http://www.androidpolice.com/2012/07/12/getting-to-know-android-4-1-part-3-project-butter-how-it-works-and-what-it-added/)
(1)VSync的作用
上面是一张没有Vsync控制的画图过程:当frame0在屏幕上显示时,frame1先在CPU里准备,再在GPU中render到显示内存,最后在下一个VSYN来到时,把frame1切换到屏幕。由于在Android4.1(JellyBean)之前,所有的绘制画图都是以一种“自由的,松散的”的方式调用,这样开始调用画图的时间不定(就是调用View::onDraw()的时间不定),所以当系统负荷很重时,frame2的onDraw()方法可能很晚才调用,在VSyn信号来时,Frame2还没有准备好,显示只好在显示frame1了。造成画面停顿。
引入VSYN就是解决这个问题。其实显示系统一直是用Vsync来切换图像的,只有在VSync信号下,显示内存的图像才会切换到屏幕。在JellyBean中,VSYNC被引入到上层的View绘图。View::onDraw()保证在VSync来到时被调用。示意图如下:
这样View::onDraw()保证在VSync信号到达时调用,避免的延迟。
其实用VSync只解决了View::onDraw()延时调用的问题。如果CPU或GPU画图的时间超过16ms(两个VSync信号的间隔),那一样会使两个连续的VSync显示一个frame,造成画面停顿。
如上图,GPU处理frameB的时间过长,导致VSync来到时,frameB没有render完成。
(2)Tipple Buffer的示意
三缓冲(Tripple buffer)的机制就是解决这个问题。
引入BufferC。新的VSync来到时,并且bufferB还在使用时,新的bufferC被引入。画图在新的bufferC中进行,BufferB被拖后到第三帧显示,整个UI显示时间被拖后一帧。但每一帧都按一定的顺序一定的时间片显示。这就是tripple buffer的原理。
2、可扩展的通知显示(Notifications):
3、 进一步增强的无障碍使用功能:
4、 双向文字和其他语言的支持:
5、 可调整大小的应用程序小部件
6、 与游戏开发有关的新功能:
7、 新的多媒体功能
8、 其它重要的新功能:
参考及扩展阅读:
1、 http://developer.android.com/about/versions/jelly-bean.html
2、 http://blog.csdn.net/aaa2832/article/details/7716471
其他零碎笔记:
1、 google最新数据:android 设备 超过 5亿+,每天100万+的激活量。Android应用在132国家有收费应用,并且收费国家中92%城市都有下载收费应用的用户。
2、 AIDE是一个Android Java集成开发环境(IDE),可以通过安装使用AIDE,开发者可直接在Android系统内进行Android软件及游戏等应用的开发。它不仅仅是一个编辑器,更支持“编写-编译-调试运行”整个周期。
3、 Google 官方Market 怎么样自己应用容易被搜索到。在应用的介绍(spam) 增加流行关键字,容易被搜索到。类似SEO。官方审核的拒绝邮件,一定认真对待,有些分析的地方都是和商量的,如果你不理不猜,再次犯错时,有可能终身禁赛。不过公司大小、背景如何。
4、Android 4.1 SDK中提供一个新的名为systrace的工具,能够从Kernel到系统层对App进行性能优化。此外,还为开发者提供了多种除错及调校功能,例如视窗图层更新、GPU图形处理等。App更新也更加智能,可以仅更新APK有修改的部分,而非像以往那样必须完整下载新版应用程序,如此一来,能够节省2/3的下载流量
5、android design,建议纯android程序,多用action Bar、区分 up 和back键的区别 、每个应用页面左右边框28dp。
参考:http://developer.android.com/design/index.html
http://design.eoeandroid.com/