Rust 能开发App了,谷歌宣布安卓加入对 Rust 的支持!

️Rust 移动端开发体验 当下(2022)Rust 在移动端的开发体验如何 没有 Java/Kotlin 代码,不使用 AndroidStudio 和 Gradle, 秒级编译并打包 Apk 运行 Rust 编译静态库打包到 XCFramework, 发布 Cocoapods 阅读详情
点击“开发者技术前线”,选择“星标”
让一部分开发者看到未来

出品 | OSCHINA

文 | 局长

谷歌发布博客称 AOSP (Android Open Source Project) 现已支持使用 Rust 开发 Android 操作系统。

谷歌表示,Android 大约 70% 的高危安全漏洞由内存安全问题造成。顺便一提,微软和 Chrome 宣布采用 Rust 解决内存问题时也提到了「70% 的安全漏洞是内存安全问题」这个说法。这是什么定律?

对于这些内存安全问题,谷歌表示除了优化内存错误检测机制外,最有效的解决办法是采用内存安全语言。虽然 Kotlin 和 Java 也属于内存安全语言,同样是为易用性、可移植性和安全性而设计,它们是开发 Android 应用的最佳选择,但对于操作系统的底层而言,不能选择 Kotlin 和 Java。

操作系统底层开发需要使用系统级编程语言,例如 C、C++ 和 Rust,这类语言支持访问底层系统资源和硬件。对于 C 和 C++ 来说,开发者负责管理内存生命周期,但管理内存时因多线程代码库的复杂性很容易导致他们犯错。

Rust 则可以利用编译时检查(确保对象的生命周期和所有权)和运行时检查(确保内存访问有效)来保证内存安全,并且 Rust 在实现这种安全性的同时,还提供了与 C 和 C++ 相当的性能。

谷歌表示,引入新的编程语言并不能解决现有 C/C++ 代码中的错误。即便重新调动 Android 团队中每个软件工程师参与开发,重写几千万行代码并不可行。因此,Rust 主要用于新的开发而不是重写成熟的 C/C++ 代码。

更具体的原因是,谷歌对内存安全错误存在的时长进行了分析,发现大多数内存安全错误都发生在新的或最近修改的代码中,其中大约 50% 只出现了不到一年,这些错误后面会逐渐修复,也就意味着旧代码并不是迫切需要改进的地方。

无论如何,向 Android 平台添加新的开发语言支持是一项大工程。比如需要维护工具链和依赖关系、更新测试基础设施和工具、以及对开发者进行培训等。谷歌表示,在过去的 18 个月里,他们一直在为 AOSP 添加 Rust 支持,并计划在接下来的几个月内共享部分早期使用 Rust 开发的项目。此外,谷歌还计划将 Rust 扩展到更多系统,这将是一个长期计划。

-End-


最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!



如果你想获得完整PDF可以通过以下方式获得;关注回复“面试题”
点击????关注,关注后回复【面试题】即可获取

历史推荐重磅!阿里巴巴正式开源基于 Flutter 的 Web 渲染引擎:Kraken
Windows Terminal Preview 1.8发布,更新亮点一览
Google 宣布停止 JCenter 使用,5月1日 全面下线
Excel?最强国产开源在线表格 Luckysheet 走红GitHub!
好文点个在看吧!
Rust桌面应用开发工具-----Tauri(Yew UI 模版)安装与测试 最近在学习rust,想要了解一下关于rust在桌面应用开发方面的工具。。。 阅读详情

相关推荐

rust图形编程_用 React + Rust(WebAssembly 模块)开发的简易图像处理 WebApp

入口简介去年底开始学的 Rust, 直到今年春节后, 感觉入了点门, 就想做点啥练练手, 由于一直对图像处理很感兴趣, 且此类应用比较能发挥出 WebAssembly 的特性, 于是折腾一番, 就有了这个 App. 本想等到功能稍微多些, 到了勉强可日常使用的程度再发布, 没想到实际开发中, 难度和工作量远超我的预期, 只能先发布再说.注: 貌似移动端暂时都不支持 WebAssembly, 因此你...

weixin_39704971的博客 1396

用 Rust 开发跨平台 App 探索和实践

本文主要介绍了如何使用 Rust 来开发跨平台 App,你可以在 GitHub 或 Gitee 获取到我们用 Rust 实现跨平台开发的所有代码。

nanxijms的博客 4648

Rust+物联网智能报警方案、Rust腐蚀智能电路教程

一般我们使用较为频繁的是Rust+ app的通知功能,Rust+配对服务器后可以实现各种触发事件的消息通知。Rsut+还支持连接家里的智能设备实现物联网交互功能。Rust+与国外接口服务平台IFTTT(if this then that)做了数据对接,同样国外很多常用应用等都接入了该平台。这样Rust+就可以借助IFTTT与其他应用交互啦,下面就介绍一下我使用的Rust物联网智能报警灯方案!

Rust盒子提供Rust腐蚀热门教程,实用工具等。 7362

谷歌宣布 Android 加入对 Rust 的支持

code小生一个专注大前端领域的技术平台公众号回复Android加入安卓技术群出品 | OSCHINA文 | 局长谷歌发布博客称AOSP (Android Open Source Pr...

weixin_38754349的博客 893

RTX 50系显卡实战3DGS:从源码编译到避坑指南

本文详细介绍了在RTX 50系显卡上成功运行3D Gaussian Splatting(3DGS)的完整实战指南。针对新显卡架构与旧版预编译包不兼容的核心问题,文章提供了从源码编译CUDA扩展的清晰步骤,包括环境配置、依赖安装、核心模块diff-gaussian-rasterization和simple-knn的编译避坑方法,并涵盖了数据准备、模型训练与实时预览的全流程,帮助开发者高效利用新硬件进行3D重建。

weixin_28314575的博客 263

药物重定位实战:如何用反向找靶技术挖掘老药新用(附Python代码示例)

本文详细介绍了药物重定位中的反向找靶技术,通过分子相似性计算、机器学习模型和结构对接等方法,挖掘已有药物的新治疗潜力。附Python代码示例,帮助读者快速实现从分子结构到潜在靶标的智能预测,显著提升药物研发效率。

weixin_28726671的博客 259

【Rust日报】谷歌消除安卓系统内存安全漏洞的努力和进展

iocraft - 一个用于在终端或日志中创建漂亮的文本输出和界面的 Rust 库iocraft 是一个用于在终端或日志中创建漂亮的文本输出和界面的 Rust 库。它提供了一个声明式的 API,可以轻松构建复杂的布局和交互元素。主要特性包括:使用简洁可读的语法定义 UI。使用 flexbox 布局组织 UI 元素。将有色且样式化的 UI 输出到终端或任何支持 ASCII 的地方。创建动画或交互元素...

Rust语言学习交流 1088

Arcgis填补栅格空缺值Nodata

Arcgis填补栅格空缺值Nodata

pass17的博客 1万+

告别配置噩梦:5步搭建Rust Android开发环境(Comprehensive Rust实战指南)

你是否还在为Rust Android开发环境配置头痛?Android Studio与Rust工具链冲突、NDK版本不兼容、Cuttlefish模拟器启动失败——这些问题是否让你迟迟无法开始Rust移动开发之旅?本文基于谷歌Android团队官方课程[《Comprehensive Rust》](https://link.gitcode.com/i/6414f1ccb20be846ff1684efec...

gitblog_01052的博客 678

【STC8A8K64S4A12开发板】—学习PWM脉冲宽度调制

版权声明:本文为博主原创文章,转载请附上原文出处链接。 文章目录前言一、硬件设计1.PWM脉冲宽度调制介绍2.STC8A8K64S4A12系列单片机PWM介绍3.PWM配置步骤二、软件设计1.PWM寄存器汇集2.寄存器解析2.1.PWM配置寄存器PWMCFG2.2.PWM控制寄存器PWMCR2.3.PWM中断标志寄存器2.4.PWM外部异常控制寄存器2.5.PWM时钟选择寄存器2.6.PWM触发ADC计数器寄存器2.7.PWM2翻转寄存器2.8.PWMn控制寄存器2.9.PWMn电平保持控制寄存器3.PW

qq_36139768的博客 5216

ChatBI告别“NL2SQL依赖症”!从准确率50%到90%,3大技术路线+4个企业案例拆解核心玩法

摘要: ChatBI通过自然语言交互实现数据民主化,其核心是“语义理解+数据执行+知识沉淀”的全链路能力,而非单一的NL2SQL技术。行业采用三大技术路线提升准确率:专有知识库(提升30%)、指标标签语义层(准确率85%)、JSON中间层(多轮对话提升25%)。数据执行方案包括NL2SQL、NL2API等,需结合场景选择。企业落地需解决四大痛点:跨表查询准确率低(引入拓扑图)、模糊查询(用户干预机制)、响应慢(预计算缓存)、多轮对话(上下文池)。Spring AI Alibaba提供轻量级集成方案,助力企业

weixin_52610848的博客 1653

Universal Android Debloater 完整教程:不Root,3步卸载安卓预装应用

Universal Android Debloater 是用 Rust 写的跨平台图形工具,靠 ADB 在不 Root 的安卓手机上卸载预装应用,帮你回收空间、省电、更隐私。适合想给手机减负的普通用户。 [![Universal Android Debloater 主界面,展示三星设备系统应用列表与卸载恢复按钮](https://raw.gitcode.com/GitHub_Trending/u

gitblog_00718的博客 776

2021年软件测试面试题大全

简述测试流程: 1、阅读相关技术文档(如产品PRD、UI设计、产品流程图等)。 2、参加需求评审会议。 3、根据最终确定的需求文档编写测试计划。 4、编写测试用例(等价类划分法、边界值分析法等)。 5、用例评审(主要参与人员:开发、测试、产品、测试leader)。 6、开发提交代码至SVN或者GIT ,配管搭建测试环境。 7、执行测试用例,记录发现的问题。 8、验证bug与回归测试。 9、编写测试报告。 10、产品上线。 补充测试用例设计过程: 根据需求得出测试需求 设计测试方

hard_days的博客 20万+

Rust/WinRT更名,全面支持Windows API

击“开发者技术前线”,选择“星标” 让一部分开发者看到未来 文 | 白开水来自| OSC开源社区微软已宣布推出Rust for Windows v0.9,其中包括完全的 consu...

开发者技术前线-DevolperFront 1058

ICC2:postmask ECO参考脚本

更多学习内容请关注「拾陆楼」知识星球。

m0_61544122的博客 882

《Zephyr OS 入门与实战》第3章:第一个 Zephyr 程序 - Blinky 实战

解决方法:确认设备树overlay文件已正确加载。返回值,确认驱动初始化状态。

2301_79143213的博客 539

不用Root就能安全免费卸载安卓预装应用:Universal Android Debloater实战教程

Universal Android Debloater(下文简称 UAD)是一款用于安卓预装应用卸载的跨平台桌面工具:它用 Rust 编写、带图形界面、无需 Root,通过 ADB 通道安全地移除或禁用安卓手机上的出厂系统应用,适合想腾出存储空间、降低后台耗电、加强隐私保护的普通用户。 ## 一台新机里的预装垃圾,靠什么手段清干净 刚到手的新手机,应用列表里往往躺着几十个你永远点不开的 App

gitblog_01198的博客 308

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Android 和 iPhone 终于能互传文件了:Quick Share 打通 AirDrop 的来龙去脉

摘要: 谷歌通过逆向工程实现Android QuickShare与苹果AirDrop互通,打破生态壁垒。该功能自2025年11月首发于Pixel 10后,迅速扩展至三星、小米等主流安卓设备。核心技术是利用苹果私有协议AWDL基于Wi-Fi/蓝牙开放标准的特性,以Rust语言编写安全层,实现点对点直传。欧盟监管压力(如《数字市场法》)和Wi-Fi Aware标准演进进一步推动跨平台互传。用户现可免App、双向传输文件,标志着生态封闭性逐步松动。(148字) 关键点: 技术突破:逆向AWDL协议,蓝牙发现+Wi

移动端开发干货分享 471

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

无需 Root 安全瘦身手机:Universal Android Debloater 完整指南

Universal Android Debloater 是一款免费的跨平台桌面工具,通过 ADB(Android 调试桥,电脑和手机之间的"指挥通道")帮非 Root 的安卓设备卸载预装应用。新机用了一个月就发热、掉电快,你有没有查过是谁在后台偷偷运行?那些厂商预装、在设置里怎么都删不掉的应用,正是它要处理的目标。 ## 先认识一下它 [![安卓预装应用卸载工具 Universal Andro

gitblog_00226的博客 100

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Universal Android Debloater:无需Root的安卓系统高效清理方案

安卓设备预装应用泛滥是困扰用户的普遍问题,这些不必要的系统应用不仅占用存储空间、消耗电池电量,还可能泄露用户隐私。Universal Android Debloater(UAD)作为一款开源的跨平台工具,通过ADB技术为普通用户提供无需Root权限的系统应用清理方案,显著提升设备性能与隐私安全。这款基于Rust语言开发的智能工具支持Windows、macOS和Linux三大平台,内置超过21,60

gitblog_00696的博客 393

终极Android瘦身指南:Universal Android Debloater一键清理系统臃肿应用

Universal Android Debloater是一款跨平台GUI工具,采用Rust编写,通过ADB技术帮助非root安卓设备用户轻松移除不必要的系统应用,从而提升设备隐私性、安全性和电池续航能力。无论你是安卓新手还是有经验的用户,这款工具都能让你告别手机卡顿,享受更流畅的使用体验。 ## 🚀 为什么需要Android瘦身工具? 现代安卓设备出厂时预装了大量系统应用,其中许多应用不仅占

gitblog_00209的博客 398

Android 12 新版本泄露,隐私安全可媲美 iOS 系统?

code小生一个专注大前端领域的技术平台公众号回复Android加入安卓技术群整理 | 郑丽媛出品 | 优快云(ID:优快云news)去年,由于突发的形势,谷歌取消了一年一度的 I/...

weixin_38754349的博客 229

秀动APP的逆向分析

如我是一个开发人员,我在进行界面跳转,再或者数据请求后,加几句话,对23946端口的检测(frida检测一个例子,当然没有那么简单),那么frida检测我们可以认为是语句级别的粒度,因为只有几行代码,我们也无法避免,因为我们要进行操作。第二种,安全公司提供的so,内部有设备id等加密方式计算,那么跳过就不是那么简单了 我们可以定位so加载的头部位置,在怀疑后,检测so的各个段的加载,定位so大致位置,来进行patch反调试。如果我们公司没有开发人员怎么办,当然是外包啦,引入一个安全公司的so,打钱打钱。

xp185201的博客 1566

Moodiary开发探秘:Flutter与Rust强强联合的跨平台架构

Moodiary是一款完全开源的跨平台日记应用,采用Flutter与Rust技术栈构建,为用户提供了优雅且高效的日记记录体验。这款应用不仅支持多平台运行,还通过Flutter的UI优势与Rust的性能优势,实现了美观界面与高效功能的完美结合。 ## 技术架构:Flutter与Rust的黄金搭档 Moodiary创新性地将Flutter和Rust两种现代编程语言结合,打造出既美观又高性能的跨平台

gitblog_00252的博客 760

终极Android系统清理指南:无需Root权限深度优化你的手机

还在为手机里那些删不掉的预装应用烦恼吗?Universal Android Debloater是一款基于Rust语言开发的跨平台Android系统清理工具,无需root权限即可深度清理设备中的冗余应用。这款专业级工具能显著提升设备隐私安全、优化系统性能并延长电池续航,是现代Android用户必备的系统优化利器。 ## 📱 你的Android设备为什么越来越慢? 大多数Android设备出厂时

gitblog_01175的博客 314

华为王成录:鸿蒙 OS 不是安卓、iOS 的拷贝;拼多多回应「删除手机照片」事件 | 极客头条...

「极客头条」—— 技术人员的新闻圈!优快云 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。整理 | 丁恩华出品 | 优快云(ID:优快云...

优快云资讯 1915
上一篇: 为什么 HashMap 默认加载因子非得是0.75?
下一篇: 知乎高赞:拼多多和国家电网,选哪个?
DevolperFront
博客等级 码龄8年 464粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值