十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
前提:Flutter 项目中引入使用多个插件,内含有swift与静态库时出现的一系列问题
创新互联建站专注于企业全网营销推广、网站重做改版、通海网站定制设计、自适应品牌网站建设、H5技术、成都做商城网站、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为通海等各大城市提供网站开发制作服务。
问题一、swift插件缺少设置swift的版本号
解决方案:在Xcode中打开项目Targets—builds settings —user-defined
在user-defined内添加一行:SWIFT_VERSION(版本号视当前版本号为准)
问题二、静态库
看到网上好多的解决方法是删除掉或者添加上Podfile中的use_frameworks!,实测与此无关,错误信息忘记截图啦????,大体就是pod install 时出现无法install之类的信息
正解方法是找到相关错误插件内的podspec文件,添加s.static_framework = true
最近项目中,用到了flutter中的webview加载带有echarts控件的html文件,但是发现图表一直无法显示,通过查询相关资料,分析apk包文件,知道了是由于flutter项目中的文件打包后的路径发生变化,造成找不到相关依赖,特此记录一下,使用下面这个方法便可以解析出Android和IOS打包后的apk中资源文件的实际位置。
例如,你的资源文件是在flutter项目的根目录下的 'assets/files/echart-pie.html',
那 'getAssetsPath('assets/files/echart-pie.html')'才是打包成apk后,资源文件的实际路径。
按照上面的操作,你会发现在android设备上已经可以正常显示本地html页面了,但是IOS设备上还是一脸懵逼;不要慌,这块是由于webview_flutter本来就不支持加载本地文件,这时我们还需要修改下插件IOS部分的源码,FlutterWebView.m文件:
通过以上骚操作,就可以实现webview_flutter在android和ios设备上加载本地html文件了。
最后:推荐一个插件,已经在官方的基础上进行了优化
webview_flutter_plus
1,执行 flutter pub publish--dry-run 检查是否具备发布条件
遇到的问题1:
It‘s strongly recommended to include a “homepage“ or “repository“ field
解决方案:在 pubspec. yaml 中配置 主页 homepage 地址 :
homepage:
可参考:
2,执行 flutter pub publish--server= 发布
如果执行flutter pub publish发布的话会遇到以下错误,国内还是用 flutter pub publish--server= 来发布
package repository requested authentication! You can provide credential using:pub token add
问题1:It looks like accounts.google.com is having some trouble. Pub will wait for a while before trying to connect again. OS Error: Operation timed out, errno = 60, address = accounts.google.com, port = 53481 pub finished with exit code 69
原因:
1、国内墙;
2、flutter环境配置添加了国内镜像
解决方式:
1、翻墙;
2、屏蔽环境变量里关于flutter的国内镜像;
屏蔽方式如下:
# export PUB_HOSTED_URL=
# export FLUTTER_STORAGE_BASE_URL=
3、设置终端代理命令(这个是我解决的方式),这个非常重要,不然就会报上面超时错误了
如果出现:Flutter pub finished with exit code 1
解决方式:flutter packages pub publish --server=
此问题原文链接:(毕竟要尊重版权)
问题2:LICENSE这个文件中不能有TODO,也不能为空,可找个flutter库看看别人是怎么写的
近来闲暇时间一直在做Flutter,闪屏页是一个比较常见的需求,网上的闪屏页教程大部分是那种类似于广告页,而非iOS中的 LaunchScreen 性质的闪屏页.按照原来的方案我们要配置闪屏页的话,我们需要同时配置两端的闪屏页,那么有没有比较简单的方案来配置闪屏页呢? 毋庸置疑,当然是有了,那就是Flutter的插件 - flutter_native_splash . 接下来我们就来看一下具体应该怎么使用这个插件.
首先把 flutter_native_splash 导入到工程的 pubspec.yaml 中.这里需要注意的是需要放在 dev_dependencies 下,而不是 dependencies .具体如下所示.
接下来我们就来配置 flutter_native_splash ,在配置之前我们看一下 flutter_native_splash 的可配置项.
例如,我现在只有一个logo图片,那么我想生成iOS和android两端的闪屏页,这时候我只需在 pubspec.yaml 如下设置即可.
当然了,如果你有其他配置可以自行进行添加.
配置完成了,我们该如何生成呢?这时候需要我们打开终端 cd 到我们的工程目录下.如果是Android Studio 或者 VSCode 默认就是在当前工程目录下.
然后我们需要执行下面的三个命令来生成闪屏页
每一次都敲三个命令实属麻烦,我们把上诉的三个命令整合成一个命令,如下所示.
那么,我们不想使用该插件生成的闪屏页该怎么办呢?我们只需要执行下面命令即可.
注:每一次更换图片都是需要重新执行命令重新生成.
OK,上面就是关于 flutter_native_splash 的使用全部内容,其实比较简单,如果需要定制化的,建议还是各自平台配置各自的闪屏页.如果有任何问题欢迎在评论区批评指导,感谢大家了.
如图所示,FlutterPlugin中Android模块引用 flutter.jar 内容报红:
这是由于 flutter.jar 没有被引入造成的,处理方式分为以下三个步骤:
截图示例:
点击Sync按钮重新编译即可