赞
踩
作者 | Evana Margain
译者 | 明明如月
整理 | 夕颜,责编 | 唐小引
出品 | CSDN(ID:CSDNnews)
在过去的 8 到 10 年里,移动市场一直被两个我们都熟悉的系统所主导: 安卓和 iOS。我们总是认为现在了解的事物永远不会结束,但是随着科技的发展,谷歌已经不再这么认为。自 2016 年 8 月以来,谷歌一直致力于研发全新操作系统 Fuchsia。在预想中,这个“通用”的操作系统能够无缝运行于所有平台,如智能设备、平板电脑和智能手机。一些人认为它可能是 Android 的终结者。
在这篇文章中,我们来深入了解一下这个被称为“Fuchsia”的操作系统,并讨论它是否真的能替代安卓。
预计已进入开发者试用阶段
据外媒的最新消息,谷歌新操作系统Fuchsia OS的开发已经接近尾声,进入开发者亲自试用的阶段。
据说,谷歌在软件开发周期中会进行多轮测试,在让普通用户测试之前,通常会有一个开发人员亲自上阵的“狗粮”测试期,也就是让开发者亲自安装使用操作系统,通过亲身感受找到系统的优点和不足。“狗粮”测试很可能是谷歌将开发产品推向公众之前的最后一次全公司范围的测试阶段。
除了阿尔法和贝塔等正常公共测试,谷歌还会有很多内部测试,如小范围的“鱼食”测试,以及在“鱼食”和“狗粮”之间的“团队食品”测试阶段,等等,过程繁复严苛。
这次外媒之所以声称Fuchsia OS已接近尾声,就是因为他们发现在过去的一年里,有迹象表明,至少Fuchsia OS下一代操作系统的部分功能已经经历了鱼食阶段和团队食品阶段的开发测试,而在最近Fuchsia OS的一些代码变化中,出现了“为狗粮发行版本”准备的字样,这代表着一些开发者可能已经启动了“狗粮测试”。
如果最终的内部测试进展顺利,谷歌完全有可能提前把Fuchsia OS测试版提交给第三方开发者,进入“开发者测试阶段”。
虽然近期由于新冠病毒的全球蔓延,MWC、Facebook F8开发者大会相继取消,但是谷歌却暂时没有取消2020年度I/O大会的迹象。不久前,谷歌还正式放了I/O开发者大会的注册通道,入场券的价格为1150美元,学术类通行证售价375美元。
然而,特殊情况下一切皆有变数,2020年度I/O大会能否顺利举行,以及是否会在大会上公布Fuchsia OS开发测试版,还是要打上大大的问号。
Fuchsia OS项目的起源、发展
自从4年前,也就是2016年8月15日公布初始版本之前,Fuchsia OS就一直笼罩在一层神秘的色彩之下,直到2019年Fuchsia OS的开发者网站Fuchsia.dev上线,Fuchsia OS的神秘面纱才被彻底揭开。
为了更好地了解它,下面我们来简单回顾下Fuchsia OS的起源与发展历程的时间轴:
1sudo apt-get install build-essential curl git python unzip
1xcode-select --install
1fx set core.x64 --with //bundles:kitchen_sink2fx build
fx set命令可配置构建内容,并在默认输出目录out / default和out / default.zircon中生成构建规则和元数据。参数core.x64是指产品和电路板的定义,描述了你的Fuchsia设备已构建并可用的软件包。
运行Fuchsia的设备可以通过网络临时下载和安装软件包,在开发环境中,你的开发工作站就是这些临时软件包的来源。电路板和产品定义包含一组软件包,但是如果你需要添加其他软件包,请使用--with标签。此示例包括kitchen_sink,这个英文习语的意思是“几乎所有内容”。当你更加专注于开发时,你可能会使用更具体的--with选项,以减少构建时间。
fx build命令运行构建,将源代码转换为程序包和其他构建工件。如果你修改源代码,则可以通过单独重新运行fx build命令来进行增量构建。fx -i build启动监视程序,并在文件更改时自动进行构建。
有关更多详细信息,请参见基础构建系统指南:
https://fuchsia.dev/fuchsia-src/concepts/build_system
其他选择:使用ccache加速构建
ccache通过缓存以前构建的工件来加速构建。如果设置了CCACHE_DIR环境变量并引用了存在的目录,则会自动启用ccache。
要覆盖默认行为,请将标签传递给fx set:
1--ccache # force use of ccache even if goma is available2--no-ccache # disable use of ccache
1fx emu
fx emu有各种标志来控制仿真器配置:
1fx mu -N
以上内容足以使临时软件(由fx serve提供服务)能够正常运行,其中包括许多工具,例如uname和fortune(如果已构建)。
另外,希望从仿真器访问Internet的用户还需要在仿真器TAP接口上配置某种方式的IP转发和IPv4支持。
1fx serve
用网络启动Fuchsia。可以通过-N标志在QEMU中完成此操作,也可以在已安装的硬件上完成。当Fuchsia启动并显示“ $” shell提示符后,就可以运行程序了!
例如,要获得deep wisdom,运行:
1fortune
要关闭或重新启动Fuchsia,使用dm命令:
1dm shutdown2dm reboot
更改一些来源
Fuchsia系统上几乎所有的东西都存储在Fuchsia的包装中。通常的开发工作流程包括重建Fuchsia软件包并将其推送到开发设备或QEMU虚拟设备。
在examples / rolldice / src / main.rs中更改rolldice二进制文件。
重新构建rolldice软件包并将其推入运行中的Fuchsia设备,方法是:
1fx build-push rolldice
在Fuchsia设备的shell提示符下,使用以下命令运行更新的rolldice组件:
1rolldice
选择一个标志
启用了图形的引导后,Fuchsia显示多个选项卡。当前选择的选项卡在屏幕顶部以黄色突出显示。
以下键盘快捷键可以浏览终端:
1present_view fuchsia-pkg://fuchsia.com/spinning_square_view#meta/spinning_square_view.cmx
当你启动使用Scenic的东西,使用硬件加速的图形或构建默认程序包(将引导至Fuchsia System UI)时,Fuchsia将进入“图形模式”,该模式将不显示任何文本样式。为了使用文本样式,你需要按Alt-Escape进入“控制台模式”。在控制台模式下,Alt-Tab将可以进行上文所述才做,再次按Alt-Escape可返回图形样式。
1run fuchsia-pkg://fuchsia.com/ledger_tests#meta/ledger_unittests.cmx
如果要让Fuchsia保持运行状态,然后重新编译并重新运行测试,就在一个终端中启用联网的情况下运行Fuchsia,然后在另一终端中运行:
1fx test <test name> [<test args>]
如果要进一步操作,可以参考以下链接,篇幅所限,不能一一详解:
https://fuchsia.dev/fuchsia-src/development
参考链接:
https://medium.com/better-programming/google-fuchsia-androids-replacement-code-in-mobile-5ebafe8eb11a
本文为CSDN编译文章,转载请注明出处。
【End】《原力计划【第二季】- 学习力挑战》
正式开始
即日起至 3月21日
千万流量支持原创作者
更有专属【勋章】等你来挑战
推荐阅读 ☞ 华为或将推出“华为搜索”;飞书回应微信指控;Fuchsia OS 进入开发者试用阶段 | 极客头条 ☞ 那些神一样的程序员 ☞ 超30亿人脸数据被泄露,美国AI公司遭科技巨头联合“封杀”☞狂赚 1200 亿,差点收购苹果,影响千万程序员,那个叫做太阳的公司却陨落了!
☞AWS还是Firebase?在移动应用后端应该使用哪个?
☞两成开发者月薪超 1.7 万、算法工程师最紧缺!| 中国开发者年度报告
你点的每一个在看,我认真当成了喜欢Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。