查看原文
其他

Flutter 您需要知道的知识点 | FAQ・第七期

Flutter 谷歌开发者 2021-08-05

Flutter 是一套高效的跨平台免费开源 SDK,可以帮助开发者用一套代码同时在 Android 和 iOS 上构建媲美原生体验的精良应用,近期更是升级到了 1.9 版本,带来诸多全新的特性与改进。我们也一直从社区中搜集到不少开发者关注的问题,并用连载的形式由浅到深地为开发者们进行解答。如果您对 Flutter 已经有一定的了解,不妨在看到问题的时候先试着回答,然后和我们给出的答案进行比较,从而进一步加深理解。本篇文章为本次连载的最后一篇,感谢大家一直以来的关注!


下面开始 Flutter FAQ 第七期: 项目篇

问题 1:

我该如何获得技术支持?

点击下方空白区域查看答案 

如果您觉得遇到 bug 了,请提交至我们的问题追踪入口。我们也鼓励您多多使用 “如何 (how to) ...” 在 Stack Overflow 搜索解答。如果您希望直接与我们沟通,请使用我们的官方邮件地址 flutter-dev@googlegroups.com。 


  • Flutter 官方问题追踪入口
    https://github.com/flutter/flutter/issues
  • 在 Stack Overflow 上查看 Flutter 相关问题
    https://stackoverflow.com/tags/flutter

问题 2:

我该如何融入 Flutter 开发社区?

点击下方空白区域查看答案 

Flutter 是开源的,我们鼓励您做出自己的贡献。您可以使用官方问题追踪入口来提交功能需求或者 bug 报告。


我们也希望您加入我们的邮件讨论 (flutter-dev@googlegroups.com),告诉我们您是如何使用 Flutter 的,以及打算用 Flutter 开发什么。


如果您打算为 Flutter 贡献代码,请先阅读代码贡献指南,然后从简单待修复问题列表中寻找力所能及的问题开始入手。


  • Flutter 代码贡献指南
    https://github.com/flutter/flutter/blob/master/CONTRIBUTING.md
  • 简单待修复问题
    https://github.com/flutter/flutter/issues?q=is%3Aopen+is%3Aissue+label%3A%22easy+fix%22


问题 3:

Flutter 是开源的吗?

点击下方空白区域查看答案 

是的,Flutter 在技术上是开源的。您可以在 GitHub 上获取到它。


  • Flutter GitHub
    https://github.com/flutter/flutter

问题 4:

Flutter 以及其依存项目使用的是哪种软件许可协议?

点击下方空白区域查看答案 

Flutter 包含两个部分: 一个使用动态链接二进制文件的引擎,以及引擎加载的 Dart 框架二进制文件。引擎使用了很多软件组件,且包含许多依存内容。完整的说明和依存清单请查看引擎的许可协议


框架部分则自成一体,且只有一份简单的许可协议


另外,您使用的其他 Dart 代码包可能有其独有的许可协议。


  • Flutter 引擎许可协议
    https://raw.githubusercontent.com/flutter/engine/master/sky/packages/sky_engine/LICENSE
  • Dart 框架许可协议
    https://github.com/flutter/flutter/blob/master/LICENSE

问题 5:

我如何确定我的 Flutter 应用该显示哪些许可协议?

点击下方空白区域查看答案 

您可以使用 API 来确定需要显示的许可协议。


  • 如果您的应用使用了 Drawer,则添加一个 AboutListTile

  • 如果您的应用不包含 Drawer 但使用了 Material 组件库,请调用 showAboutDialog 或者 showLicensePage

  • 对于更加定制的场合,您可以使用 LicenseRegistry 获得原始的许可内容。


  • Drawer
    https://api.flutter.dev/flutter/material/Drawer-class.html
  • AboutListTile
    https://api.flutter.dev/flutter/material/AboutListTile-class.html
  • showAboutDialog
    https://api.flutter.dev/flutter/material/showAboutDialog.html
  • showLicensePage
    https://api.flutter.dev/flutter/material/showLicensePage.html
  • LicenseRegistry
    https://api.flutter.dev/flutter/foundation/LicenseRegistry-class.html

问题 6:

目前有哪些人在开发 Flutter?

点击下方空白区域查看答案 

Flutter 是一个开源项目。目前 Flutter 中的大部分都是由 Google 的工程师来开发。如果您喜欢 Flutter 的话,我们希望您加入开发社区并做出贡献。

问题 7:

Flutter 有哪些指导原则?

点击下方空白区域查看答案 

我们相信:

  • 为了触达每一位潜在用户,开发者需要针对多个移动平台发布自己的应用。

  • 目前常用的 HTML 和 WebView 由于一些默认的交互响应 (滚动、布局等) 以及向后兼容等问题,很难获得稳定的高帧率和精确的设计体验。

  • 目前,开发同一个应用的不同平台版本成本很高: 这意味着不同的团队、不同的代码库、不同的工作流程以及不同的工具,等等。

  • 开发者需要一个简单的、更好的方法来使用同一套代码库开发应用的不同平台版本。而且他们不希望在质量、细节和功能控制以及性能上有任何妥协。


我们目前集中于以下三件事:

  • 功能控制 - 开发者应该能访问到系统所有层级的功能,且能获得全面的控制权。

  • 性能表现 - 用户应该获得流畅、响应迅捷且没有垃圾的应用。

  • 精确实现 - 每一个人都应该获得精确、优美且富有表现力的移动应用体验。

问题 8:

Apple 会拒绝我的 Flutter 应用吗?

点击下方空白区域查看答案 

我们无法代 Apple 发言,不过 Apple 的政策在过去几年有过不少变化,App Store 里也有很多使用其他技术开发的应用,如 Unity 和 Flutter。使用 Flutter 开发的 Hamilton 等应用还被 Apple 推荐过。


当然,Apple 是其生态的最终管理者,但我们会尽我们所能来确保使用 Flutter 开发的应用不会被 Apple 拒绝。


再次感谢大家关注本次连载!如果您在使用 Flutter 构建应用的时候有什么想法或疑问,欢迎在评论区给我们留言。我们期待着看到您为不同平台的用户们打造出同样精美、高效的体验!



 点击屏末 | 阅读原文 | 了解 Flutter 更多详细信息

  想了解更多 Flutter 内容?


  • 在公众号首页发送关键词 “Flutter”,获取相关历史技术文章;

  • 还有更多疑惑?欢迎点击菜单 “联系我们” 反馈您在开发过程中遇到的问题。

推荐阅读




    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存