Skip to content

yyc123/flutter-Note

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

flutter-踩坑之路

1 pub插件库需要设置镜像地址,不然会被墙。

2 ios启动页只能用storyBoard,设置launch启用页的话会有1秒左右黑屏。

3 需要分别配置ios和安卓端需要的权限,例如相机,相册,http请求等。

4 官方提供的webView插件,不弹出键盘(最新版本已修复),而且如果webview页面有js交互操作,例如点击按钮弹出选项框,会引起程序的crash。

5 使用androidStudio开发经常会卡顿,使用vscode开发效率提升明显,但是经常遇到格式化代码出现乱码现象。

6 使用flutter pub get或flutter pub upgrade操作时,最好使用命令行,如果用AS等工具的话,可能或锁死线程,无法取消(重启电脑也不行)。

7 dart的语言类型为强类型,不会做自动推导转换,比如定义一个List类型,传入值为dynamic,会报错,而不会自动转。

8 androidX是个分水岭,有的插件不支持androidX,而有的支持,但是如果不适配androidX的话,程序会报错,跑不起来,所以从技术更新的角度,最好都选择适配过androidX的插件。

9 在ios端,插件是以pods的形式引入的,假如需要原生支持,必须配置pods目录下的podspec文件,但是如果要依赖的插件又依赖另一个第三方插件,这样会产生一个依赖链,有时项目中有莫名的冲突或报错,难以发现。

10 flutter随着版本的升级,语法会出现改动,以及其他各种问题,例如从1.9.1升级到1.13以后,项目直接就跑不起来了。

11 flutter项目通过Charles直接抓包的话,是看不到数据的,需要在代码中设置代理。

12 很多手机常用的功能,还是必须依赖原生的,例如消息推送,微信QQ等第三方支付,分享,地图等业务,必须依赖原生提供插件。

13 如要调试ios端app,还得必须用mac系统,因为调试ios还是离不开xcode配置证书,描述文件等,而只是用windows系统开发是兼顾不到ios的。

14线上的flutter项目崩溃,难以收集到日志。

15打包编译ios包时,需要执行flutter clean命令,不然机审时会报错:使用了私有api。

未完待续。。

About

开发中遇到的问题总结

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published