CSDN@为什么我们应该使用 Flutter?( 二 )


BinaryMessageHandler , 并以 channel name 为 key 注册到 BinaryMessenger 中 。 当 Flutter 端发送消息到 BinaryMessenger 时 , BinaryMessenger 会根据 channel 找到对应的 BinaryMessageHandler , 并交由其处理 。
Handler:

  • MessageHandler;
  • MethodHandler;
  • StreamHandler 。
三种 handle 分别与三种 channel 对应 , 当我们向 channel 注册一个 handle 时 , 实际上就是向 BinaryMessager 注册一个对应 BinaryMessageHandler 。 当向 channel 发送消息时 , 就需要使用对应的 handle 来处理 。
Flutter Packages 的操作
Flutter 支持使用由其他开发者贡献给 Flutter 和 Dart 生态系统的共享软件包 。 您可以在 https://pub.dev/ 中查找 。
之后需要在 pubspec.yaml 中进行添加:
dependencies: flutter: sdk: flutterim_flutter_sdk: ^1.0.0之后执行 flutter packages get 下载 。
开发的 package
用户也可以把自己开发的 Flutter package 并发布在 https://pub.dev/ 上 。 这里需要注意 , 如果开发的 package 需要使用第三方 sdk , 比如您开发的 package 需要集成环信 Android 和 iOS 的 SDK , 需要在对应的配置文件中添加对 SDK 的引用, 如:
Android 需要在 build.gradle 中添加 Android SDK:
dependencies { api 'com.hyphenate:hyphenate-sdk:3.6.4'}iOS 需要在 podspec 中添加 iOS SDK:
s.dependency 'Hyphenate', '~> 3.6.4'Packages 发布
发布前需要先检查:
pubspec.yamlREADME.mdCHANGELOG.md这三个文件最后会出现在 https://pub.dev/package 中包信息的展示页, 请仔细确认 。
之后执行校验:
flutter packages pub publish --dry-run --server=https://pub.dartlang.org没有问题后执行发布:
flutter packages pub publish --server=https://pub.dartlang.org此时会要求校验邮箱 , 把命令行中返回的 URL 粘贴到浏览器中 , 使用 Google Gmail 进行验证 , 校验后命令行中会提示校验成功 , 之后开始上传 , 等待上传结束后 package 就发布成功了 。 之后就可以在 pub.dev 中搜索到发布的 。
结语
Flutter 作为新兴的混合开发解决方案 , 已经被广泛关注和使用 , 这不光是因为它有 Google 的支持 , 更因为它提供了更完善的文档和更高效的运行方式 , 开发者不必再把大量精力放到不同平台的展示上 , 更好的完成自己的业务 , 从企业管理者角度看 , 也大大降低了开发成本 。
【CSDN@为什么我们应该使用 Flutter?】作者简介:杜洁鹏 , 从业 9 年 , 在环信负责 iOS 开发 , 专注于移动开发、VR 和摄影方向 。
【End】 《原力计划【第二季】- 学习力挑战》正式开始!即日起至 3月21日 , 千万流量支持原创作者 , 更有专属【勋章】等你来挑战推荐阅读你点的每一个在看 , 我认真当成了喜欢


推荐阅读