0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

叫板 Android ,跨平台应用开发神器 Flutter 又添开源插件

BYXG_shengwang 来源:YXQ 2019-03-25 16:45 次阅读

Flutter 的“野心”,在新一年里开出了花……

Flutter 一头扎进了 2019,“一不小心”就遍地开花了。

从 2016 年项目启动,到在 2017 年的 Google I/O 大会上首次公开亮相,再到 2018 年底凭借 1.0 正式版的推出狠狠刷了一波屏,Flutter 历经观望审视、万众瞩目复又“泯然众人”,近来也再次回归业界关注的焦点。

Google 方面似乎也从未隐藏其倾注在 Flutter 身上的“野心”——当 Android 开发的地位受到危及时,Google 面对各路竞争回应称,“其他框架都无法和我们竞争,因为我们的竞争对手是我们自己!“。于是乎,承担着与原生 Android 竞争使命的 Flutter 应运而生。彼时的 Google 将其定义为“一款新的用于创建移动应用的开源库”,“有助于更容易,更快速地开发出界面美观的移动应用。”

继而随着 Flutter 1.0 正式版的推出,毫无意外地吸引了各方关注。更有评论称其为“Google 承前启后的一步棋”,“前指的是基于 Android 和 iOS 的跨平台解决方案;后指的是它也是谷歌的下一代操作系统 Fuchsia 的开发语言”。

“Flutter 的核心是一个独立的可执行二进制文件,所以它不仅能改变移动开发的世界,也能改变桌面开发的世界。你只需编写一次代码,就可以在 Android、iOS、Windows、Mac 和 Linux 上以原生方式发布,还能通过 AngularDart 与 Web 共享业务逻辑——这一点意义重大。”

与此同时,Google 方面也透露,“虽然Flutter 的首要目标平台是 iOS 和 Android,但他们也在不断探索将 Flutter 拓展到手机端以外的更多平台上”。

诸多吸引人的特性之下,Flutter 也积累了大批关注者。有评论表示,“尽管 Flutter 社区仍然很年轻,但是已经逐渐有不少优秀的第三方插件涌现出来,加上 Dart 相对全面的标准库,实现这样一个音视频 SDK 或是类似的功能并不需要自己大量地去造轮子”。

Flutter + WebRTC:Agora Flutter SDK 设计实践

近日,声网应开发者需求,推出了 Agora Flutter SDK,以 Flutter Plugin 的形式为 Flutter App 增添实时音视频能力。Flutter 产品经理 Tim Sneath 亦透过 Twitter 表达了其对该项目的期待:

声网 Agora Web 工程师郝阳在此前的项目介绍文章中表示:

在应用层的开发过程中,风格非常接近于使用 React 进行 Web 开发,加上 Flutter 亚秒级的 Hot Reload 等特性,在开发体验与效率上相比原生开发确实有着不小的优势。

再考虑到逐渐完善的跨平台特性(桌面端的 flutter-desktop-embedding 项目与浏览器端的 humming bird 项目)以及可能会到来的谷歌新操作系统 Fuchsia,对于无论是想要接触到原生开发的 Web 开发者,还是追求更高的开发效率和更好的开发体验的原生开发者来说,Flutter 都是一个非常适宜的切入角度,值得在新的一年里加入自己的技术栈中。

关于这个项目,CSDN(ID:CSDNnews)特别邀请到声网 Agora 资深工程师、Agora Flutter SDK 技术负责人龚宇华,就项目的开发实践、实时互动技术的发展以及开源选择等问题进行了分享:

开发那些事:为什么选择 Flutter?

“Flutter 作为谷歌大力主导推进的跨平台开发框架,在去年得到了越来越多开发者的关注。声网在去年注意到这个趋势,展开了一定的预研,并在 Flutter 正式发布 1.0 后第一时间推出了 Flutter 版 SDK。包括 React Native、Electron 等开发者使用较多的跨平台框架,我们也都推出了对应的SDK,方便开发者在自己的开发平台上接入我们的实时音视频服务。”

“Flutter 同时还是一个正在快速发展中的跨平台开发框架,基础文档非常完整和具体,因此无论是开发 App 还是开发 plugin,上手都比较容易,照着官方文档的指导步骤很快就能搭起完整的开发环境。Flutter 使用的 Dart 语言需要一些熟悉时间,但作为一门比较新的现代编程语言,语法掌握起来并不复杂。总的来说,整个开发过程比较顺利,没有遇到什么坑。”

对商业团队而言,Flutter 的生态是否足够完善曾经是大家关注的重点,谈及 Flutter 现阶段的优势与不足,龚宇华也坦言,“Flutter 还在快速的发展中,二月底已经发布了 1.2.1 版本,除了性能、稳定性的提升外,带来了新的 Web 开发工具。目前 Flutter 还无法很好地支持一些系统级的功能服务,比如应用内支付、推送通知、数据持久化保存等。语言能力上,Dart 和 C/C++ 的桥接也不够简单。这些都是今年 Flutter 需要继续改善的地方。另外,扩展到对 PC 平台的支持也是很多开发者期待的功能“。

5G 风口下,实时互动技术的机遇与挑战

为 Flutter App 实现实时音视频通话功能是 Agora Flutter SDK 的主要特性。放之眼下,实时互动技术也确乎处于全面爆发时期,而传输延时问题一直是讨论这一问题时所关注的重点。对此,龚宇华分析表示:

“在实时音视频通话中,延时产生于各个环节中。采集和渲染本身产生的延时和设备硬件能力和内核优化有关。而传输延时一般指设备端到服务端的延时和服务端内部传输的延时。设备端到服务端的延时由设备端本身和接入的网络运营商质量决定,服务端内部传输则要靠路由选择、骨干网优化等技术手段降低延时。当然,传输延时再怎么优化也是无法打破物理极限的,不同的应用场景对延时的要求也不一样。比如社交直播、在线K歌等互动性强的场景,对低延时要求很高,而金融、直播答题等场景则更注重安全性、画质等其他技术指标。因此在实际应用中,需要根据场景的特性综合延时、卡顿、音频质量、视频清晰度等指标一起进行权衡,选择合适的方案。”

而谈及眼下火势甚旺的 5G 将会给实时互动领域带来的机遇和挑战,龚宇华指出,“5G 带来的带宽提升和延时降低对实时互动领域的影响是巨大的。随着 5G 时代的到来,实时传输 4K 分辨率将成为可能。移动设备硬件能力的进一步提升也能实现复杂度更高的编解码能力。这些都让将来的实时视频通话更高清和流畅,也会带来很多新的交互场景,比如 AR/VR 交互,实时 AI 换脸等等。这对音视频编解码、数据传输等基础技术都提出了新的挑战”。

Flutter 及 Agora Flutter SDK 的未来趋势

明天的 Flutter

“跨平台开发框架一直是一个热门的潮流,Flutter 作为由谷歌推进的跨平台项目,从第一天起就吸引了大量注意力。随着不断的完善,也不乏一些公司已经选择 Flutter 作为主要开发框架。总的来说,目前正处于开发者进来尝鲜的阶段,如果今年谷歌能保持对 Flutter 进行质量和性能的改进,相信这个框架会得到越来越多的开发者的认可。”

明天的 Agora Flutter SDK

“Agora Flutter SDK 已经完成了对基础实时音视频功能的集成,开发者只要有实时沟通的需求,都可以使用 Agora Flutter SDK,将来会陆续集成加密、美颜等进阶功能。我们也将持续关注 Flutter 社区,聆听开发者的需求。”

开源的可持续发展困局

据悉,目前该插件已在 GitHub 上开源:

https://github.com/AgoraIO/Flutter-SDK

而“开源”长期以来也都是开发者们会持续关注的话题,近来业界更是围绕“开源的可持续发展”发起了不少讨论。GitHub 的开源项目经理 Devon Zuegel 就在不久前发布的一篇文章中,强调了开源社区中的一些问题,其中包括资源与治理不足、缺乏沟通、工作超负荷等。

此次采访中,龚宇华也就 Flutter 和开源相关的问题谈了谈自己的看法:

“开源加速了技术和行业的交流和发展,这也是为什么互联网可以发展如此迅速的原因。但是开源本身又有一个难以避免的问题,就是开源项目大多是靠开发者和社区自身的驱动,很容易因为技术发展受限或者其他现实原因推进不了而搁置。相对而言,Flutter 本身是个开放的开源社区,背后却有大公司推动,相当于两者的结合。既可以以开放促进技术迭代,同时又有大公司积极推动,所以目前比较火。”

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3850

    浏览量

    125625
  • 应用开发
    +关注

    关注

    0

    文章

    52

    浏览量

    9141

原文标题:叫板 Android 开发!跨平台应用开发神器 Flutter 又添开源插件!| 技术头条

文章出处:【微信号:shengwang-agora,微信公众号:声网Agora】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    鸿蒙实战开发学习:【HiView插件开发

    Hiview是一个跨平台的终端设备维测服务集,其中是由插件管理平台插件实现的各自功能构成整套系统。 本文描述了hiview插件
    的头像 发表于 03-12 11:52 635次阅读
    鸿蒙实战<b class='flag-5'>开发</b>学习:【HiView<b class='flag-5'>插件</b><b class='flag-5'>开发</b>】

    浅谈兼容 OpenHarmony 的 Flutter

    OpenHarmony SIG 组织在 Gitee 开源了兼容 OpenHarmony 的 Flutter。该组织主要用于孵化 OpenHarmony 相关的开源生态项目。     ▲ 仓库地址
    的头像 发表于 02-02 15:22 248次阅读
    浅谈兼容 OpenHarmony 的 <b class='flag-5'>Flutter</b>

    了解 Flutter 3.16 功能更新

    作者 / Kevin Chisholm 我们在季度 Flutter 稳定版发布会上带来了 Flutter 3.16,此版本包含诸多更新: Material 3 成为新的默认主题、为 Android
    的头像 发表于 12-16 15:55 383次阅读
    了解 <b class='flag-5'>Flutter</b> 3.16 功能更新

    如何在Torizon平台使用Flutter开发用户界面

    Google 面向 Android, iOS 推出的跨平台移动应⽤开发框架 Flutter 可以构建高质量的原⽣⽤户界⾯,并可以扩展支持 Web 和桌面应用。
    发表于 12-07 10:39 182次阅读
    如何在Torizon<b class='flag-5'>平台</b>使用<b class='flag-5'>Flutter</b>来<b class='flag-5'>开发</b>用户界面

    怎样用现成的Eclipse插件来调试AT32系列芯片

    Eclipse是著名的平台的自由集成开发环境(IDE),通过安装不同的插件Eclipse可以支持不同的计算机语言,比如C/C++等,Eclipse本身只是一个框架
    发表于 10-24 07:12

    VisionFive 2成功集成Android开源项目(AOSP)!

    非常高兴地向各位宣布,赛昉VisionFive 2上已成功集成了Android开源项目(AOSP),为用户带来了更多的软件解决方案以及与Android软件生态系统的无缝集成。这一里程碑源于与
    发表于 10-16 13:11

    平台系统开源免费抓包软件ProxyPin概述

    免费开源 Http、Https 抓包工具,支持 Windows、Mac、Android、IOS, 全平台系统,使用 Flutter 框架开发
    的头像 发表于 09-11 11:17 1207次阅读
    全<b class='flag-5'>平台</b>系统<b class='flag-5'>开源</b>免费抓包软件ProxyPin概述

    资讯速递 | ArkUI-X 预览版已正式开源

    OpenHarmony项目群技术指导委员会(以下简称“TSC”)-平台应用开发框架TSG所孵化项目 —— ArkUI-X,近期已正式开源开发
    发表于 08-11 16:10

    【今晚开播】社区说 | 精益求精: Flutter 技巧专题篇

    Flutter 作为深受欢迎的跨平台开发框架,迄今为止已有超过 70 万款使用 Flutter 打造的应用上架。开源生态社区更是有超过 20
    的头像 发表于 07-27 17:40 279次阅读
    【今晚开播】社区说 | 精益求精: <b class='flag-5'>Flutter</b> 技巧专题篇

    社区说 | 精益求精: Flutter 技巧专题篇

    Flutter 作为深受欢迎的跨平台开发框架,迄今为止已有超过 70 万款使用 Flutter 打造的应用上架。开源生态社区更是有超过 20
    的头像 发表于 07-25 17:45 285次阅读
    社区说 | 精益求精: <b class='flag-5'>Flutter</b> 技巧专题篇

    为了更好的 Flutter | 2023 第二季度开发者调研

    ; 让 Flutter 成为一个强大的工具包,助力开发者打造令人赏心悦目的优质用户体验,并灵活部署到诸多平台 " 的美好愿景。在今年的 Google I/O 大会上,我们也继续 分享了这四个
    的头像 发表于 06-28 10:10 259次阅读
    为了更好的 <b class='flag-5'>Flutter</b> | 2023 第二季度<b class='flag-5'>开发</b>者调研

    SpringBoot插件开发模式

    插件开发模式正在很多编程语言或技术框架中得以广泛的应用实践,比如大家熟悉的jenkins,docker可视化管理平台rancher,以及日常编码使用的编辑器idea,vscode等,随处可见的带有
    的头像 发表于 06-21 09:45 341次阅读
    SpringBoot<b class='flag-5'>插件</b>化<b class='flag-5'>开发</b>模式

    Flutter热更新技术探索

    APP 发布到市场后,难免会遇到严重的 BUG 阻碍用户使用,因此有在不发布新版本 APP 的情况下使用热更新技术立即修复 BUG 需求。原生 APP(例如:Android & IOS
    的头像 发表于 06-08 14:31 528次阅读
    <b class='flag-5'>Flutter</b>热更新技术探索

    在 I/O 看未来 | 社区投稿 - 一文快速总结 Flutter &amp; Dart 的现状和未来

    作者 / 郭树煜,谷歌开发者专家 (Flutter Dart GDE),《Flutter 开发实战详解》作者,掘金优秀作者(恋猫de小郭),Github GSY 系列
    的头像 发表于 05-19 13:45 556次阅读
    在 I/O 看未来 | 社区投稿 - 一文快速总结 <b class='flag-5'>Flutter</b> &amp; Dart 的现状和未来

    # 面向万物智联的应用框架的思考和探索(上)

    ,实现了完全通过数据驱动的UI变更。另外,Flutter通过基于Skia的自绘制引擎实现了高性能的平台平台一致性的渲染能力,并提供了Hot Reload机制提升
    发表于 05-04 10:48