2017.12月1-2号,google开发者大会首次在印度召开,地点是班加罗尔国际展览中心,大会的内容主要以“开发者”为目标用户进行设计的。
大会的安排主要分为3块:主会场、demo展示会场和交流休息区。主会场主要将google对于印度的布局战略进行了介绍,重点关注印度的本地化,和基于此推广众多技术、平台。技术方面,涉及PWA、Android、Firebase、TenseFlow、社区建设等,着重PWA,和机器学习方面的内容。
这次去参加GDDIndia,一方面收到google的邀请,邀请我们在PWA上表示一下支持的态度;另一方面,了解google在印度推什么技术,PWA的在印度的落地情况。下面介绍下主会场的宣讲内容,重点介绍PWA的内容。
Keynote
第一天 Keynote
Keynote的演讲者是Pankaj Gupta,是一位开发主管。
- first GDD in India,Google在印度举办的最大型的event
- next billion users,下一个十亿用户产品的主场将在印度
- mobile-first, largely mobile-only
- google的主要产品和平台
第二天 Keynote
- 机器学习帮助诊断疾病,关注印度女性乳房癌;
- Inclusive Design (包容性设计)
gender-based: emoji, age-based: Youtube Kids, culture-based - Youtube Go:本土化的Youtube
1 PWA
PWA在印度的落地情况很不错,之前google在全球推广PWA时,也是拿印度的案例做展示,比如flipkar(购物),ola cabs(打车),trivago(订房)。
PWA在本次大会占的篇幅较大,总共有6个演讲中者在讲PWA,google在印度推广PWA下足了功夫。内容概括起来有4部分,但讲的内容基本上是炒冷饭。
- Progressive Web Apps: What, Why and How?
- From Website to Progressive Web App
- Frameworks and Tools for Progressive Web Apps
- PWA + AMP
1.1 PWA: What, Why and How?
开场先介绍全球和印度的移动互联网现状:
- 2014年移动用户已超过PC端。60%用户仍在使用2G网络;
- 在2020年之前,印度53%用户仍将使在2G网络
- 其他在弱网络下,web应用各种不爽的情况.....
然后引出PWA的意义,和4个基本概念:
- means radically improving web user experiences。
- FAST、INTEGRATED、RELIABLE、ENGAGING
期间介绍了其他浏览器对PWA的支持情况
特地邀请UC的嘉宾(海愚,我在场下打酱油:smile:)上场客串,我们表明了UC后续会完整支持PWA,并已开始Working。
案例介绍
h5.ele.me,ola cabs(打车), trivago(订房),展示业务提升数据。除了饿了么的数据看起来较正常,其他的都是巨幅提升:smile:。
PWA亮点
除了以上内容,还带来2个新的东西:
PWA + AMP,结合AMP,进一步提升web app的体验,降低对网络状况的依赖;
PaymentsRequest API:目前66%付费在web上,但移动购物转化率仅占所有已完成购物活动的三分之一,浏览器集成支付后,将显著改进购物流程。
1.2 从传统网站转向PWA
用一个案例讲解从传统网页转向PWA的整个过程,over。
1.3 PWA的框架与库
- 调试工具: DevTools - Application
- 检测工具: DevTools - audit。Auit会对PWA最佳实践的建议做检查,并打分
- sw-precache & sw-toolbox:
这两个工具是Google最早推出的sw生成工具,也是使用最广泛的。
sw-precache是一个sw.js生成工具,用来预加载及缓存。
sw-toolbox则是动态缓存策略的补充。
sw-precache可内嵌sw-toolbox,提供命令行生成sw.js,还有Webpack,gulp,grunt的plugin。 - workbox: 下一代更为系统的工具库。基本上就是sw-precache & sw-toolbox的结合体,还有数据分析,之后的工具开发也转向workbox。
- 案例汇总: HNPWA
1.4 PWA + AMP
AMP相当于开启严格模式的html,自己实现了丰富的组件,且不允许使用javascript,依托google强大的CDN服务器,加速网页的加载、渲染速度。
PWA + AMP,简单来说就是给AMP补充PWA的离线缓存,Web Push,A2HS特性。但AMP不允许使用js,所以AMP自己实现一个用于注册ServiceWork的组件:amp-install-serviceworker。
这里的案例,sw.js是用workbox生成的。
2 Andorid
andorid刚发布Oreo(Andorid 8.0),重点讲解Oreo带来的新特性。
* 节省电量,通过最大化限制不常用的后台应用的活跃度来节省电量
* 内建的自动填充功能,可在用户许可下安全地保存登陆凭证。
* 画中画模式(类似分屏)
* 其他不太记得了~
其他还有很多内容:
* Architecture Components
今年5月发布的Android架构组件库,它帮助开发人员管理和简化UI组件生命周期和数据持久性,
总之,Architecture Components很适合用来快速构建Android应用程序
* 性能评估,Android Studio新增的帮助分析性能的工具
* Android Things,高大上的物联网操作系统,没明白为什么要单独搞个操作系统
3 Firebase
Firebase是个大平台,包含构建Web应用所需的一切以及,同时也能构建IOS/AND应用。包含非常多功能,登录授权,NoSQL,资源仓库,CDN托管,后端API,ANALYTICS,消息推送....
宣讲内容主要讲解如何在Firestore构建一个完整的、可伸缩的应用。对小公司,和个人开发者来说,非常实用。
4 Tensorflow & Tensorflow lite
TensorFlow是谷歌的机器学习库,自2015年推出以来,一直在推进机器学习。
结合谷歌的云机器学习引擎的可伸缩性,任何人都可以使用TensorFlow以低成本地利用深度学习技术,而不需要太多专业知识。
Tensorflow探讨了三个企业的例子,它们采用了TensorFlow和Cloud ML来解决现实世界的问题:
* 一个在日本种黄瓜的农民,自己用TF做了一个基于深度学习的黄瓜分类程序;
* 使用TF用于汽车模型和零件分类的二手车拍卖服务;
* 一家全球保险公司,用TF分析事故案例,提高预测的准确性。
另外,现场的实时字幕程序也是一个TF应用。demo会场展示了2个例子,猜拳机器人手臂,小型人脸勾勒复绘机器。
5 其他
Location and Battery
分析Android获取位置的API与电池消耗的关系,探讨如何合理的根据业务调用获取位置的API,以减少电池的消耗。
视频地址:https://www.youtube.com/watch?v=_HaL7jdQTVg&index=13&list=PLlyCyjh2pUe_Xyqy9K6sBxwr0L8QaU7dq
Testing Kotlin
Kotlin是一种与Java编程语言和Android Studio完全集成的高级语言。balabala如何通过测试来学习Kotlin。
Polymer and Web Components
介绍Polymer的Web Components,怎样创建自定义Components,以及如何组合使用的Web组件,使得应用程序更轻、更快,而且使用更少的数据。
# last
最后附上完整的视频地址:https://www.youtube.com/playlist?list=PLlyCyjh2pUe_Xyqy9K6sBxwr0L8QaU7dq&utm_source=devsite&utm_medium=events-gdd-india&utm_campaign=post-event