教程

已可下载编译,三分钟初探 Fuchsia SDK

0

Fuchsia 中文社区刚刚报道过,Android 源代码被发现添加 Fuchsia SDK 和 Fuchsia 设备支持,现在似乎是了解更多关于Fuchsia SDK的好时机。今天我们初步探讨一下 Fuchsia SDK,希望在Fuchsia上抢占先机的开发者可以多多关注一下。

Fuchsia SDK简介

一般而言,软件开发工具包(SDK)用来帮助开发人员创建应用程序。有些像Android SDK一样是专门 Android 着一个平台设计的,而其他像Google的 Flutter SDK 则可以为多个平台制作应用程序。而 Fuchsia SDK 属于前一种,专门为 Fuchsia 平台设计。

目前,人们不能简单地下载Fuchsia SDK并开始使用,因为谷歌尚未正式公布。但是,由于绝大多数的Fuchsia 是开源的,因此可以构建和使用SDK。好奇的朋友可以在本文的底部找到一个下载链接,但我们显然不建议将其用于任何重要的项目,因为它会很快变得过时或者完全错误,而其中所包含的工具只能搭配64位Linux一起使用,因此如果您使用的是OS X或者其他操作系统,那么你只能靠自己另想办法了。

而 Chromium 团队目前正在使用 Fuchsia SDK 为Fuchsia构建Web Runner应用程序。

关于Fuchsia SDK和Flutter SDK:

尽管我们了解Fuchsia与Flutter的关系,但Flutter SDK与Fuchsia SDK不同。正如Flutter今天使用Android SDK制作Android应用程序一样,我们也可以通过Flutter使用Fuchsia SDK。目前,我们需要直接使用Fuchsia SDK制作Fuchsia应用程序。实际上可以使用Fuchsia SDK直接构建Flutter应用程序,因为Fuchsia 可以深度支持Flutter。

Bazel

目前,Fuchsia SDK 能够使用 C++,Dart和Flutter编写的应用程序(实际上也是Dart)。无论您选择使用哪种语言或框架,您都需要使用Bazel来管理依赖并处理最终构建。

Bazel是一个由Google提供的用于构建和测试软件的框架,仅需要重新编译有变更修改的部分代码。Bazel 是一个庞大的话题,很值得学习更多,但就我们的目的而言,你只需要知道Bazel将你的应用程序连接到Fuchsia SDK中的库,并使用SDK附带的工具来实际构建可安装的Fuchsia应用程序软件包。

Fuchsia SDK中有什么?

想要尝试 Fuchsia SDK 的开发人员可以看看 Fuchsia 的代码。例如,在“fuchsia_modular”Dart包中,你可以发现怎么使用 agents,怎么创建 proposals,并且和 entities 一起工作。 (Entities 是 Fuchsia 的一个术语)

甚至可以使用 Dart 从SDK 中使用 Zircon 内核层,还有“fidl”软件包,可以让你使用一些其他编程语言写的程序和函数来访问连接 Fuchsia。

对于C ++开发人员,可以使用许多更底层的软件包,包括直接访问Vulkan(用于Fuchsia的图形),以及Zircon内核提供的资源。 FIDL 还允许Dart和C ++开发人员访问Fuchsia中提供的许多其他服务和实用程序,如UI代码,蓝牙,WiFi甚至语音转换文本功能。

获取Fuchsia SDK

对于那些只想近距离了解他们有朝一日如何将应用程序带到Fuchsia的开发人员,你可以在这个新创建的GitHub仓库中浏览它 。去掉了不必要的代码,并确保符合许可证,这个仓库只包括代码和库,而不是任何二进制文件或Fuchsia OS本身的副本。

提醒:由于Fuchsia一直在开发中,SDK 一致继续发生变化,因此内部信息将迅速过时,如果您希望在Fuchsia SDK上构建自己的应用程序,建议你自己手动构建SDK。获取新副本的最佳方法是使用Fuchsia源代码自行构建。如果您已将Fuchsia 源代码和相关工具下载到您的(Linux或OS X)计算机,则可以使用以下命令构建SDK,然后按照说明进行操作。

fx set x64 --args = build_sdk_archives = true
fx full-build

今天我能用它做什么?

假设你今天构建了Fuchsia SDK,你应该合理地期望能够用它做什么?实话实说,没什么可以做的。然而,正如我们上周所看到的那样,《Android 源代码被发现添加 Fuchsia SDK 和 Fuchsia 设备支持》Google正在使官方的Android Emulator与Fuchsia兼容来支持开发它。

如果想要探索更多,你应该能够使用Bazel和SDK来创建一个Fuchsia 应用程序。实际上,已经能够用 Flutter 为Fuchsia 构建一些简单的应用程序了,我们可以把它叫做 Fuchsia App!


本文由Fuchsia OS 中文社区翻译出品,转载请联系许可
原作者:Kyle Brashaw; 译者:bootingman
原文链接:A first look at the Fuchsia SDK, which you can download here
本文链接:https://fuchsia-china.com/a-first-look-at-fuchsia-sdk/

视频:Google Fuchsia OS 最新进展(2018年12月)

Previous article

视频:Android 10.0 和 Fuchsia 最新消息 (2018年12月)

Next article

Comments

Leave a reply

您的电子邮箱地址不会被公开。 必填项已用 * 标注