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

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

image.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 开发的主流,你认为呢?

相关文章
|
3月前
|
人工智能 算法 Java
Java与AI驱动区块链:构建智能合约与去中心化AI应用
区块链技术和人工智能的融合正在开创去中心化智能应用的新纪元。本文深入探讨如何使用Java构建AI驱动的区块链应用,涵盖智能合约开发、去中心化AI模型训练与推理、数据隐私保护以及通证经济激励等核心主题。我们将完整展示从区块链基础集成、智能合约编写、AI模型上链到去中心化应用(DApp)开发的全流程,为构建下一代可信、透明的智能去中心化系统提供完整技术方案。
308 3
|
4月前
|
安全 Java API
Java Web 在线商城项目最新技术实操指南帮助开发者高效完成商城项目开发
本项目基于Spring Boot 3.2与Vue 3构建现代化在线商城,涵盖技术选型、核心功能实现、安全控制与容器化部署,助开发者掌握最新Java Web全栈开发实践。
454 1
|
3月前
|
消息中间件 缓存 Java
Spring框架优化:提高Java应用的性能与适应性
以上方法均旨在综合考虑Java Spring 应该程序设计原则, 数据库交互, 编码实践和系统架构布局等多角度因素, 旨在达到高效稳定运转目标同时也易于未来扩展.
158 8
|
4月前
|
人工智能 Java API
Java与大模型集成实战:构建智能Java应用的新范式
随着大型语言模型(LLM)的API化,将其强大的自然语言处理能力集成到现有Java应用中已成为提升应用智能水平的关键路径。本文旨在为Java开发者提供一份实用的集成指南。我们将深入探讨如何使用Spring Boot 3框架,通过HTTP客户端与OpenAI GPT(或兼容API)进行高效、安全的交互。内容涵盖项目依赖配置、异步非阻塞的API调用、请求与响应的结构化处理、异常管理以及一些面向生产环境的最佳实践,并附带完整的代码示例,助您快速将AI能力融入Java生态。
638 12
|
4月前
|
IDE 安全 Java
Lombok 在企业级 Java 项目中的隐性成本:便利背后的取舍之道
Lombok虽能简化Java代码,但其“魔法”特性易破坏封装、影响可维护性,隐藏调试难题,且与JPA等框架存在兼容风险。企业级项目应优先考虑IDE生成、Java Records或MapStruct等更透明、稳健的替代方案,平衡开发效率与系统长期稳定性。
200 1
|
4月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
4月前
|
安全 Java API
Java SE 与 Java EE 区别解析及应用场景对比
在Java编程世界中,Java SE(Java Standard Edition)和Java EE(Java Enterprise Edition)是两个重要的平台版本,它们各自有着独特的定位和应用场景。理解它们之间的差异,对于开发者选择合适的技术栈进行项目开发至关重要。
520 1
|
4月前
|
存储 小程序 Java
热门小程序源码合集:微信抖音小程序源码支持PHP/Java/uni-app完整项目实践指南
小程序已成为企业获客与开发者创业的重要载体。本文详解PHP、Java、uni-app三大技术栈在电商、工具、服务类小程序中的源码应用,提供从开发到部署的全流程指南,并分享选型避坑与商业化落地策略,助力开发者高效构建稳定可扩展项目。
|
数据可视化 定位技术 Sentinel
如何用Google Earth Engine快速、大量下载遥感影像数据?
【2月更文挑战第9天】本文介绍在谷歌地球引擎(Google Earth Engine,GEE)中,批量下载指定时间范围、空间范围的遥感影像数据(包括Landsat、Sentinel等)的方法~
5156 1
如何用Google Earth Engine快速、大量下载遥感影像数据?
|
编解码 人工智能 算法
Google Earth Engine——促进森林温室气体报告的全球时间序列数据集
Google Earth Engine——促进森林温室气体报告的全球时间序列数据集
305 0

热门文章

最新文章

推荐镜像

更多