flutter学习记录

代码开发规范

使用Flutter Go 代码开发规范

Effective Dart: 代码风格

记录在开发学习过程中遇到的问题和解决方法

生成keystore

keytool -genkey -v -keystore key路径.jks -keyalg RSA -keysize 2048 -validity 时间(天) -alias 昵称

浏览keystore信息

keytool -list -v -keystore keystore路径.jks
  • debug.keystore 默认路径.android\debug.keystore

git重置登陆信息

git config --system --unset credential.helper

git记住密码

git config --global credential.helper store
git pull /git push (之后就不用再输)

git使用方法

  • git提交本地分支到远程分支
  • GIT的基本命令和名词解释

参考资料

开发文档
各种工具
Flutter基础Widget之按钮
图标
倒计时
底部导航栏角标
角标(任何地方)
路由管理
ListView嵌套
LIstView嵌套
Container用法
抽屉动画制作
许多demo参考
mapbox地图
滑动操作组件
选取时间
可以提高用户体验的图片加载
保存图片到本地
事件处理
选择器,可以自定义
flutter学习记录_第1张图片
城市提取器
轮播图
非常好用的请求库Dio
非常好用的滑动刷新加载组件
不知道好不好用的json解析
Flutter 前后台切换监听
Flutter获取Build完成状态监听
看起来很好用的下拉筛选框
看起来很好用的列表悬浮头
(推荐)Flutter:Slivers大家族,让滑动视图的组合变得很简单!
轮播图2
使用自定义Icon
流式布局
dio统一封装
下载文件以及显示进度条
子布局修改父布局的内容

挖坑填坑

画颜色渐进
Container(
            child: Text('title'),
            decoration: BoxDecoration(
              gradient: LinearGradient(
                begin: Alignment.topCenter,
                end: Alignment.bottomCenter,
                colors: [
                  Colors.black12,
                  Colors.red,
                ],
              ),
            ),
  ),
如果异步网络请求没有结束就退出页面,会报错setState() called after dispose()

解决方法

// mounted 为 true 表示当前页面挂在到构件树中,为 false 时未挂载当前页面
if (!mounted) {
  return;
}
setState(() {
  // xxxx
})
高版本的安卓使用videoplayer报错【】
W/System.err: java.io.IOException: Cleartext HTTP traffic to **** not permitted

解决方法:
AndroidManifest.xml中的标签添加android:usesCleartextTraffic="true"

原因:为保证用户数据和设备的安全,Google针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的连接,因此运行 Android P 系统的安卓设备无论是接收或者发送流量,未来都不能明码传输,需要使用下一代(Transport Layer Security)传输层安全协议,而 Android Nougat 和 Oreo 则不受影响。

因此在Android P 使用HttpUrlConnection进行http请求会出现以下异常

你可能感兴趣的:(flutter学习记录)