Google Sky 开源项目:不使用 JAVA 开发 120 FPS 的安卓应用

标签: dart sky google | 发表时间:2015-05-09 17:43 | 作者:大舒
出处:http://segmentfault.com/blogs

clipboard.png

作为移动操作系统市场占有率最高的系统,Android 经常因不流畅和卡顿而遭人诟病。甚至很多Android 应用都达不到称得上“流畅”的 60 FPS。

不过,好消息是,最近 Google 内部正在悄悄地测试另一种高性能的编程方式,那就 Google 的 Sky 项目。视频 Sky: An Experiment Writing Dart for Mobile 便是谷歌官方的演示视频。(请自带梯子)

除了游戏之外,Android 应用几乎全部是使用 Java 编写的,但是最近 Google 内部正在悄悄地测试另一种高性能的 Android 编程方式,那就 Google 的 Sky 项目。Sky 项目使用网页开发语言 Dart 开发原生 Android 应用,强调应用的运行速度和与 Web 的高度集成。

Javascript 已经有 20 年的历史,有很多理念已经跟不上时代,编程体验也很差,因此 Chrome V8 引擎团队开发了 Dart 语言。最近 Google 的技术发布会展示了 Dart on Android 项目。它有另一个好记的名字,叫做 Sky。

现在 Sky 是一个 开源项目,但是和普通的个人开源项目相比,Sky 项目有着来自 Google 官方雄厚的支持。

快速响应是 Sky 最大的目标之一。60 FPS 普遍意义上应用流畅的标准,即需要每 16 ms 绘制一帧,但是却也是很多 Android 开发者始终无法达到的目标。但是 Sky 不一样:Sky 官方的 demo 已经达到了 60 FPS,而 Sky 官方则是要致力于带来 120 FPS 的应用体验。

Sky 团队提供了一个简单的 demo,并且已经达到了 1.2 ms 绘制一帧的惊人速度。虽然这个界面很简单,但是至少也能证明 Sky 达到 120 FPS 的目标(8 ms 一帧)不仅仅是一句空话。并且Dart 团队表示,Sky 的界面渲染和内部执行并不会互相干扰。即便可能因为网络问题或者其他问题导致内部运行速度很慢,界面仍然流畅灵敏。

Sky 项目的 Web 背景使得任何 Sky 的可移植性大大提高。只要装上 Dart 虚拟机,那么任何平台都可以执行 Sky 应用,包括 iOS。

虽然 Sky 应用的格式是 APK,但是实际上 Sky 是基于 HTTP 协议的,当然也通过浏览器的兼容性实现了自己的兼容性部署,是的任何人都能运行最新版的应用。除此之外,URLs 也是 Dart 的基础层之一。因此有人认为,Sky 应用完全依赖网络,没有网络的情况下应用便不能运行,并且启动应用的时候都需要先用一两秒下载数据。但是实际上,这些都可以通过缓存解决。

通过 HTTP 协议提供服务可以大大缩短开发时间。和普通的“编写、编译、安装”三部曲不同的是,Sky 应用可以完全在 HTTP 上编辑代码,客户端只需要关闭,然后打开,“刷新”一下,便可以不更新而直接使用最新版的应用。

除此之外,Sky 还为 Android 开发者提供一系列的设计工具,例如 action bar,出没效果、导航面板、以及其他各种你所想得到想不到的组件。

当然,Sky 也有许多安全问题有待解决。Sky 应用具备 Android 应用的所有特点,和普通的 Android 应用一样,是有权限访问所有的 Android API 的。但是考虑到 Sky 会从网页上更新应用和数据,那么安全性便不容忽视。

Sky 团队的 Github Pages 上写着“我们正在频繁地更新 Sky,因此 Sky 框架还没有完全定型,不同版本的框架和底层也可能会产生兼容性问题”。

Sky 已经为 Android 开发提供了另一种途径,至于 Sky 会不会成为以后 Android 开发的主流,你认为呢?

相关 [google sky 开源] 推荐:

Google Sky 开源项目:不使用 JAVA 开发 120 FPS 的安卓应用

- - SegmentFault 最新的文章
作为移动操作系统市场占有率最高的系统,Android 经常因不流畅和卡顿而遭人诟病. 甚至很多Android 应用都达不到称得上“流畅”的 60 FPS. 不过,好消息是,最近 Google 内部正在悄悄地测试另一种高性能的编程方式,那就 Google 的 Sky 项目. 视频 Sky: An Experiment Writing Dart for Mobile 便是谷歌官方的演示视频.

感动于《The Sky Crawlers》

- Eastar Lee - ACG批评
押井守从来都是日本动画界举足轻重的人物,这个被FANS昵称鸭子的矮个男人在1995年推出的《Ghost in the Shell》让全世界为之惊艳,与同年的《EVA》TV版堪称日本动画史上的里程碑. 连后来大红大紫的《MATRIX》的导演沃氏兄弟都坦言深受这部动画的影响. 押井守一直以“原作粉碎机”和“晦涩难懂”而闻名,他的动画一方面被主流观众认为与原作相比面目全非沉闷难耐且充斥着大量有卖弄嫌疑的说教,一方面又拥有大批对押井式语言无比狂热的粉丝.

迅雷 sky angle1-100

- 玉林 - (title unknown)
Sky Angel Vol.1 白石日和. Sky Angel Vol.2 阿立未來. Sky Angel Vol.3 河奈ちなみ. Sky Angel Vol.4 永井さくら. Sky Angel Vol.5 沖那つばさ. Sky Angel Vol.6 月丘うさぎ. Sky Angel Vol.8 大空あすか.

sky walking 监听程序的性能开源项目 - 不忘初心,方得始终。 - ITeye博客

- -
apm (Application Performance Managment :应用性能管理)简写,业界有很多成熟的收费工具,听云、OneAPM等. 当然也有开源的apm,git地址: https://github.com/wu-sheng/sky-walking. 功能方面当然和收费的没法比,但是了解一下也挺不错的,skywalking采用elasticsearch数据存储.

phonegap 框架详解 - Blue Sky ......

- - 博客园_首页
首先, 来看一下phonegap 初始化流程以及Native 与 JS 交互流程图. 说明:socket server模式下, phonegap.js 源码实现的采用1 毫秒执行一次XHR请求,  当Native  JS 队列里面有JS语句数据时,才是真正的1毫秒调用一下;  当没有数据, scoket server 会阻塞10毫秒, 也就是XHR 要等10秒钟才能收到结果,并进行下一次的轮询.

Google开源LevelDB

- 酿泉 - Solidot
Google宣布在BSD许可证下开源其键值存储引擎LevelDB. LevelDB C++库可用于多种不同环境,如被浏览器用于存储最近访问的网页缓存,或者被操作系统使用去储存安装的软件包和依赖包清单,或被应用程序用于存储用户设置. Google称,即将发布的新版Chrome浏览器,就包含了基于LevelDB的IndexedDB HTML5 API实现.

郑州晚报报道Sky:《游戏之王决不游戏人生》

- Ice - cnBeta.COM
李晓峰,1985年生,河南省汝州市人,中国电子竞技第一人, 2005年ACON5世界总决赛冠军,2005年WCG世界冠军,2006年蝉联WCG世界冠军,中国唯一一位两次蝉联电子竞技的世界冠军.

谷歌推出全新Android开发框架Sky让App更流畅

- - 月光博客
  据arstechnica 报道,谷歌推出全新Android开发框架Sky,主要目的包括提高运行速度和响应速度,在大部分设备上,应用流畅的标准都是实现60FPS的帧率,Sky希望实现高达120FPS的帧率,用户界面将保持流畅的响应速度.   目前为止,除游戏之外的Android应用通常使用Java语言来开发编写,其运行效率和速度并不理想,而谷歌内部的一个团队正在探索全新的应用开发方式.

Chris diBona 谈 Google 与开源及 Ubuntu

- Riku - Wow! Ubuntu
英文原文:Google: "Android is the Linux desktop dream come true". 原作者:Andreas Proschofsky / 译者:Riku. 这篇文章是由 derStandard.at 网站记者 Andreas Proschofsky 撰写,主要内容是今年 5 月中旬在 Googles I/O 会议上对 Google 开源主管 Chris DiBona 的采访总结.

Google正式开源LevelDB项目

- Jie - 新闻 - LUPA开源社区
  Google 宣布 LevelDB 项目开源,使用的开源授权协议为 BSD.   Leveldb是一个google实现的非常高效的kv数据库,目前的版本1.2能够支持billion级别的数据量了. 在这个数量级别下还有着非常高的性能,主要归功.