当前位置: 首页 > wzjs >正文

淘宝做基础销量网站免费的个人主页网页制作网站

淘宝做基础销量网站,免费的个人主页网页制作网站,百度云域名没有备案怎么做网站,图片网站源码在华为牵头下,Flutter 鸿蒙化如火如荼进行,当第一次看到一份上百个插件的Excel 列表时,我也感到震惊,排名前 100 的插件赫然在列,这无疑是一次大规模的军团作战。 然后,参战团队鱼龙混杂,难免有…

在华为牵头下,Flutter 鸿蒙化如火如荼进行,当第一次看到一份上百个插件的Excel 列表时,我也感到震惊,排名前 100 的插件赫然在列,这无疑是一次大规模的军团作战。

然后,参战团队鱼龙混杂,难免有人要浑水摸鱼。

某天,一名小伙伴发来一条消息,上来就发来几行代码

dependency_overrides:get:git:url: "https://gitcode.com/openharmony-sig/fluttertpc_get.git"

引入以后,出现了以下错误:

../../../pub-cache/git/fluttertpc_get-fcb370a5094adf8f93261bbad5691de233ec6276/lib/get_navigation/src/extension_navigation.dart:222:62: Error: The getter 'backgroundColor' isn't defined for the class 'ThemeData'.'ThemeData' is from 'package:flutter/src/material/theme_data.dart' ('../../../versions/versions/custom_3.22.0-ohos/packages/flutter/lib/src/material/theme_data.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'backgroundColor'.
TextStyle(color: confirmTextColor ?? theme.backgroundColor),
^^^^^^^^^^^^^^^
Target kernel_snapshot failed: Exception

看到错误信息,询问之后,确认对方使用的是 Flutter 版本为 3.21,由此可以得出结论,版本不匹配。

同时,让我感到疑惑的是,getx 不是纯 dart 库吗,这也要鸿蒙化?吓得我赶紧打开仓库源码,查看目录和依赖,并没有发现 ohos 相关的平台实现,这让我更迷惑了。于是,我点击提交日志,挨个查看最近的每条记录,查看代码变更,这一看可不得了,我乐了。

简单探究之后,我回复对方,直接用官方社区的插件和版本,没过几分钟,问题得到解决。

第二天,百无聊赖之际,我又想起这个仓库,很好奇到底发生了什么,于是我再次打开仓库,仔细研究一番。

先看变更文件类型,只有几个 markdown 文件,查看其中一个 README 的介绍

“本方案采用插件化的适配器模式实现get库鸿蒙化版本的兼容。”,既然是插件化实现,必然要有鸿蒙原生代码,我们知道,Flutter 如果要实现插件化,就需要有平台实现,那么就应该有类似 ohos 的目录工程,类似于下面这样的目录结构:

这是一个标准的 Flutter 插件,webview_flutter 为抽象层,相当于抽象接口(Interface),我们的调用就发生在这里,至于 webview_flutter_ohos, webview_flutter_web 则是每个平台的具体实现(Implement),在 webview_flutter 的 pubspec 文件中,定义了每个平台的实现

flutter:plugin:platforms:android:default_package: webview_flutter_androidios:default_package: webview_flutter_wkwebviewohos:default_package: webview_flutter_ohos

同时将各个平台的实现 package 依赖进来,这种方式通过拆分不同平台实现了解耦。

当然,插件还可以有另外一种实现形式,也就是早期的耦合式结构,将所有的平台实现放在一个 package 里面,类似于这样:

这种结构也有自身的优点,适用于私有项目,方便统一管理,减少项目结构复杂度。

然而,对于现在这个 get 仓库,啥也没有。

还有一个困扰开发者的问题,如何判断一个插件是否需要鸿蒙化,这里可以从几个方面判断:

1.纯 dart 代码自然跨平台,也就不需要单独适配,这是因为 dart vm 已经适配了鸿蒙(基于鸿蒙社区的 Flutter SDK)

2.依赖于原生平台实现的插件需要鸿蒙化,这里的原生平台指的是 ios/android/ohos 等,可以查看插件的代码仓,查看是否有 ohos 目录或 xxx_ohos 的平台包

3.插件本身为纯 dart 实现,但其依赖的插件有可能需要鸿蒙化,这就需要对其依赖的其他插件逐个排查

总结一下都干了啥,一行核心代码没改,改了些无关痛痒的 markdown,版本信息,example 里面增加了鸿蒙的入口,可有可无,这么一通操作,不仅没有实际贡献,还给开发者造成了困扰,不了解的还以为适配鸿蒙平台需要使用这个版本呢,引入以后还容易出错,最终,鸿蒙化了个寂寞。

http://www.dtcms.com/wzjs/407285.html

相关文章:

  • 公关做的好的网站seo培训赚钱
  • b2c电子商务网站建设seo包年优化费用
  • 重庆做商城网站建设前端seo优化
  • 做网站用go语言还是php百度培训
  • 新开的网站怎么做推广seo关键词排名优化技巧
  • 网站建设与seo优化的公司市场监督管理局职责
  • 深圳住房与建设局网站一句简短走心文案
  • 网站后台如何添加代码软件开发公司推荐
  • 深圳市政府网站建设 网站管理广州百度推广外包
  • 做跨国婚恋网站赚钱吗深圳百度推广seo公司
  • 做植物提取物好的推广网站手机网站百度关键词排名
  • 广州在线网页制作工具石家庄手机端seo
  • 桂林网站优化选择桂林速优网络公司搜索引擎营销的优势
  • 华大基因 网站公司建设深圳seo优化方案
  • 男女做爰高清免费视频网站各大网站收录提交入口
  • 如果做vr参观网站网络营销的十种方法
  • 北京做网站哪家便宜响应式网站模板的优势
  • wordpress自定义链接怎么配置石家庄网站优化
  • 济南单位网站建设百度seo学院
  • 做调查哪个网站比较可靠网盘资源共享群吧
  • 做视频网站免费观看爱今日国际新闻最新消息十条
  • 天津市城乡建设委员会官方网站百度快照有什么用
  • 做哪类英文网站赚钱网站如何进行优化
  • 网站地图怎么样做更利于收录廊坊seo管理
  • 聊城做网站的公司效果茶叶推广软文
  • 想学做网站需要学什么泰州seo外包公司
  • 门户网站建设进度谷歌排名查询
  • 厚街网站建设报价公司想做个网站怎么办
  • 建站工具包网站设计与网页制作
  • wordpress 仿站交叉教育培训网站