环境准备阶段:
为滦南等地区用户提供了全套网页设计制作服务,及滦南网站建设行业解决方案。主营业务为网站设计、成都网站制作、滦南网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
android-studio 版本:android-studio-ide-191.5977832-windows.exe 3.5.2
flutter版本:stable 版本 (完成系统环境变量 path配置)
dart版本:2.12.0 (完成系统环境变量 path配置)
完成相关软件安装。
配置flutter相关SDK及andriod studio路径:
flutter config --android-sdk="C:\Users\Administrator\AppData\Local\Android\Sdk"
flutter config --android-studio-dir="D:\Program Files\Android\Android Studio"
执行flutter doctor运行成功。
夜神模拟器地址:D:\Program Files\Nox\bin (完成系统环境变量 path配置)
andriod SDK tools:C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools (完成系统环境变量 path配置)
nox_adb.exe connect 127.0.0.1:62001
dart SDK:D:\software\dartsdk-windows-x64-release\dart-sdk\bin
将C:\Users\Administrator\AppData\Local\Android\Sdk\platform-tools 下面adb.exe 复制至D:\Program Files\Nox\bin覆盖
adb.exe,此外重新复制adb.exe命名为nox_adb.exe,替换原有的nox_adb.exe。
cdm 输入nox_adb version 及adb version发现版本一致。
启动野神模拟器,输入adb devices发现虚拟设备,执行flutter devices发现 127.0.0.1:62001 设备。
修改C:\learn_flutter\first_flutter\android\gradle\wrapper\gradle-wrapper.properties
distributionUrl=
修改C:\learn_flutter\first_flutter\android\build.gradle
buildscript {
ext.kotlin_version = '1.3.50'
repositories {
// google()
// jcenter()
maven { url ' ' }
maven { url ' ' }
maven { url ' ' }
}
}
allprojects {
repositories {
// google()
// jcenter()
maven { url ' ' }
maven { url ' ' }
maven { url ' ' }
}
}
修改:C:\win-flutter\flutter\packages\flutter_tools\gradle\flutter.gradle
buildscript {
repositories {
// google()
// jcenter()
maven { url ' ' }
maven { url ' ' }
maven { url ' ' }
}
dependencies {
classpath 'com.android.tools.build:gradle:4.1.0'
}
}
//private static final String DEFAULT_MAVEN_HOST = " ";
private static final String DEFAULT_MAVEN_HOST = " ";
修改:C:\win-flutter\flutter\packages\flutter_tools\gradle\resolve_dependencies.gradle
repositories {
google()
jcenter()
maven {
//url "$storageUrl/download.flutter.io"
url " "
}
}
执行 flutter run启动成功。
环境搭建坑点在于JDK兼容问题以及网络问题。
有两种方法,一,自己找人才从零开始研发,当然要耗费对应的时间和资金,并且需要多次调试,不能绝对保证能提供良好的体验感;二,直接接入第三方互联网巨头研发的视频通话SDK,要想快速搭建的话,建议选择后者,即构科技的产品就不错,可以提供90天的体验。
GITHUB地址:
我们依赖国际化的两个package:
intl_translation 是用来生成arb的翻译文件,所以添加的依赖只用在dev环境下
这里我们会创建一个代理文件
Provider使用起来学习成本更小而且管理容易
Provider
Provider学习文章
创建一个通知的基类
主题和语言改变发出通知
在main中注册
主题相对来说比较简单,不需要依赖太多外部的框架
global设置
在上面写的函数中可以找到,添加了通知
shared_preferences
shared_preferences很多人都已经用过了不做过多的介绍.主要说明下,如何把原来异步的任务变成同步.
shared_preferences 异步有两个地方,一个是初始一个是存储
项目初始化的时候,可以将shared_preferences初始化然后存储下来,shared_preferences在get的时候是同步的,我们就不需要处理了,存储的时候我们依旧是异步的,这样能解决app启动是需要初始化的参数问题
1.NavigationService 不需要context的push工具
2.ScreenService获取屏幕宽高工具
3.EventBusService 通知工具
.....