Flutter搭建开发环境
Flutter搭建开发环境
IntelliJ IDEA 2020.3.1 (Ultimate Edition)
jdk11
gradle-6.8.1
android-sdk
flutter
安装jdk
下载地址:https://www.oracle.com/java/technologies/javase-downloads.html
现在下载jdk需要注册账号,http://bugmenot.com/view/oracle.com 这个网址有提供账号
设置环境变量
JAVA_HOME=<安装目录>
PATH=%JAVA_HOME%\bin
1 | java -version |
安装gradle
下载地址:https://gradle.org/releases/
设置环境变量
PATH=D:\MySoft\JetBrains\gradle-6.8.1\bin
1 | gradle -v |
安装Flutter
下载地址:https://flutter.cn/docs/get-started/install/windows
设置环境变量
PATH=D:\MySoft\JetBrains\flutter\bin
安装IntelliJ IDEA
无线使用插件 https://gitee.com/pengzhile/ide-eval-resetter
安装flutter插件 File->Settings->Plugins
配置gradle File->Settings->Build, Execution, Deployment->Build Tools ->Gradle
Gradle user home: D:/MySoft/JetBrains/gradle-6.8.1
执行flutter docker Tools->Flutter->Flutter Doctor
android sdk File->Settings->Appearance & Behavior->System Settings->Android SDK
Android SDK Location: D:\MySoft\JetBrains\Android
修改镜像
修改Flutter
项目下的android
下的build.gradle
1 | buildscript { |
1 | export PUB_HOSTED_URL=https://pub.flutter-io.cn |
问题
问题一:Manager AVDt升级提示
解决办法:JAVA由12调整为8
问题二:Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
解决办法:运行E:\App\flutterSDK\flutter>flutter doctor --android-licenses,全部回答y
问题三: No devices available
解决办法:flutter config --android-sdk E:\App\AndroidSDK(本机android sdk路径)
其他
镜像1:https://maven.aliyun.com/mvn/guide
镜像2:https://mirrors.tuna.tsinghua.edu.cn/help/flutter/
使用阿里云国内镜像
对单个项目生效,在项目中的build.gradle
修改内容
1 | buildscript { |
对所有项目生效,在${USER_HOME}/.gradle/
下创建init.gradle
文件
1 | allprojects{ |
验证是否修改成功
在 build.gradle 文件内增加一个任务
1 | task showRepos { |
然后执行 gradle -q showRepos 任务,如果输出了刚刚配置的地址就说明修改成功,如下:
1 | $ gradle -q showRepos |
代码签名
要将应用发布到 Apple store
或者 Goople play
上就必须对你的应用进行代码签名,代码签名目的是为了识别谁开发了该应用程序,并确保该应用程序的所有更新均来自这个人。
Andorid
对于 Android 来说有两种签名:发布签名和上传签名。最终用户下载的 .aab/.apk
文件使用发布签名。上传签名提供给开发者上传到 Google Play
商店的认证。上传后,Google Play
会重新使用发布签名对 .aab/.apk
文件签名。
iOS
- 在 Apple Developer Account console 创建并下载一个分发证书。
- 打开
ios/Runner.xcworkspace
在你的项目设置里选择一个分发证书。
Flutter 的安卓打包
Flutter 在打包安卓应用时有两种方式 flutter build apk
和 flutter build appbundle
,本文说下这两种方式有什么区别。
Appbundle
Android App Bundle 是上传到 Google Play 用以支持 Dynamic Delivery 的文件,扩展名为 .aab,一个 bundle 包含所有应用的已编译代码和资源,但是还没有生成 apk 和 Google Play 的签名。
Google Play 的新应用服务模式称为 Dynamic Delivery(动态传送),使用你的应用包为每个用户的设备配置生成并提供优化的 APK,因此用户只下载运行应用所需的代码和资源。开发者不再需要构建,签名和管理多个 APK 来支持不同的设备,用户可以获得更小,更优化的下载。
Apk
如果应用不发布到 Google Play,则需要发布多个 apk,但必须自己构建,签名和管理每个 apk。
通常构建一个 apk 用以支持所有目标设备,但由于需要支持多个屏幕密度或应用程序二进制接口(ABI)的文件,这可能会导致非常大的 apk,减少 apk 大小的一种方法是创建多个 apk,在执行 flutter build apk
的时候可以添加构建参数 --target-platform android-arm,android-arm64 --split-per-abi
, 这样构建出来的 apk 包含特定屏幕密度或 ABI 的文件。
Visual Studio Code
安装插件
Chinese (Simplified) Language Pack for Visual Studio Code
Dart
Flutter
Flutter tree
Pubspec Assist
Flutter Widget Snippets
Awesome Flutter Snippets
Code Runder 鼠标右键菜单运行
Bracket Pair Colorizer 2
Flutter Files
GitLens
fish-redux-template
IntelliJ IDEA Keybindings
Path Intellisense
Setting Sync
VSCode Great Icons
vscode-flutter-i18n-json
通过Android Studio或者IntelliJ IDEA创建虚拟机,安装第三方模拟器,也可以使用真机来调试
创建项目: flutter create test
启动项目:flutter run 就可以在模拟器中打开项目
ctrl + shift + a 打开命令面板,输入 flutter