Flutter-安卓打包流程
### 一、使用终端命令生成key
```sh
keytool -genkey -v -keystore key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
```

>  将生成的 `key.jks` 文件放置到如下图位置

> 注意:这里的`key.jks`前面的`key`就是你`.jks`文件的名称 可修改的
### 二、在Android目录下创建 `key.properties`
> key.properties文件中需要输入以下内容:
```sh
storePassword=<生成keystore时设置的密码>
keyPassword=<生成keystore时设置的密码>
keyAlias=<生成keystore时的别名>
storeFile=<生成文件的key.jks的文件路径>
```

### 三、app的`build.gradle`中配置
#### 添加配置1(位置如图)
```sh
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
 ```
 
 
 
####  添加配置2(重要,位置如图)
 
 ```sh
   signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            shrinkResources false
            signingConfig signingConfigs.release
        }
    }
 ```
 > 注意: ` signingConfigs`必须在`buildTypes`前
 > 原来是有 `buildTypes`,把以前的这个 `buildTypes`删除,替换上面的 `buildTypes`和` signingConfigs`配置
 
 
 
 
 
### 四、执行`flutter build apk `
```sh
flutter build apk
flutter build apk --release (推荐)
```
 
 
 
 ### Flutter 打包APP,正式上线遇到的问题
 
 #### 1、The connection errored: Failed host lookup: 'rap2api.taobao.org' This indicates an error..... ,或访问远程图片不显示
 
 > 是因为没有配置网络权限,在android/app/src/main/AndroidManifest.xml中manifest标签中配置一下权限(如图):
 
 
 ```sh
 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
 ```
 