分享

Web与Android真正的结合

 承诺程序员之家 2016-10-10

“纸飞机”,刚开始只是一个简单的想法- “能从一个屏幕扔个纸飞机到另一个屏幕”

提出这个想法人的核心理念是利用网络的力量(即时通讯)把到世界各地所有人连接到一起。在现代网络技术,特别是JavaScript和WebGL的发展,可以让纸飞机实现到每个屏幕上。

纸飞机最初是 2016年的在谷歌I / O大会上提出的,与会者和观众可以提前30分钟连接。在2016年国际和平日公众推出,谷歌开发者做一个Android的实验,这也是谷歌特色的播放功能-具有原生的Android7.0的功能,譬如当飞机其他地方被收到后,能及时丰富的已通知升级呈现。

介绍

用户可以创建并同时增加自己设计好填充的飞机。一个简单的动作就可以把飞机投射到虚拟世界。用户通过访问Pc版网站就会看到飞机飞入画面。

之后,用户就可以查看,看看他们的飞机飞到世界各地。飞机上的每枚邮票读起来就像一本护照,以及可以看到3D的地球中飞行路线和距离。

除了让自己的飞机飞出去,用户可以通过手势就像一张网捕捉已扑捉其他地方飞来的飞机,并可以进入虚拟现实打开它,标明自己已参观过飞机。然后可以添加自己邮票,并把飞机重飞到飞机群。

WebView

开发纸飞机必须跨设备,使用网络技术最新技术从50英尺的谷歌桌面到移动设备,

  • WebGL

从程式化的多边形地铁表面,WebGL是用来渲染3D元素的技术。用自定义GLSL着色器 照亮地球,用可变形的坐标作实现用户打开关闭纸张的动画。

earth_wireframe.gif

WebSockets

当用户“抛出飞机”,这时会发送消息到WebSockets,这样消息就被传递到所有的台式电脑,这样可以看到可视化的飞机。

WebWorkers

主线程WebWorkers主要采用多线程来计算地球表面的每个WebGL呈现的元素。

为了创建跨平台的伟大的工程,,谷歌开发者扩展了原生的Android代码。这使他们能够利用网页中的Android,将已经存在的网页代码的应用应用到app中,同时加入和操作系统深度整合过的丰富的通知和后台服务。

Notifications

Firebase 云服务(FCM)用于推送通知到Android应用程序。当用户的飞机已经被用户拿起来甩,就会很多城市,并且显示已行驶的里程。并发控制的的通知管理器,以确保它们不会过于频繁到推送到android设备。

后台 Service

我们实现了每天一次检查本地存储的一个后台服务,以确定当用户在上次运行app访问后。如果用户在两周内没有访问,应用程序将会发送通知,邀请用户启动并打开该应用的一个页面。

通信网

应用服务器部署到谷歌云平台的网络上运行。将连接所有设备上,使用内置的地理编码的头以获取IP(用户唯一标识符)和Socket.IO 获取大致地理位置。

用户连接到服务器后,可以用任何设备查看该地区飞机记录。

 

 

来自:http://www.jianshu.com/p/1c27ce09390d

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多