Flutter初体验(二)安卓打包

android studio 相关说明 | 2018-11-30 16:15

一直以以来都是用android studio 打包,今天来研究一下怎么用命令行打包APK;

首先,打开flutter项目包下目录

android/app/src/main/res/可以看到有这个几个目录

mipmap-mdpi(160dpi)

mipmap-hdpi (240dpi)

mipmap-xhdpi(320dpi)

mipmap-xxhdpi(480dpi)

mipmap-xxxhdpi(640dpi)按照对应像素放入对应大小的图标文件,图片格式为 .png

配置APP名称和图标、系统权限,打开目录:

/android/app/src/main/AndroidManifest.xml

android:label="myflutter"   //设置APP名称,可以为中文就不多说了  android:icon="@mipmap/ic_launcher"  //配置APP图标路径第三步生成 keystore

keytool -genkey -v -keystore /E:/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

安卓根目录下创建 key.properties文件

添加如下代码:

storePassword=秘钥库密码 keyPassword=KEY密码 keyAlias=key storeFile=<E:/key.jks> // 生成的文件路径第五步配置 KEY 注册打开 build.gradle配置文件,

/android/app/build.gradle

在 android对象中添加 如下代码:

def keystorePropertiesFile = rootProject.file("key.properties") def keystoreProperties = new Properties() keystoreProperties.load(new FileInputStream(keystorePropertiesFile))修改下面代码

buildTypes {    release {        signingConfig signingConfigs.debug    } }为:

signingConfigs {        release {            keyAlias keystoreProperties['keyAlias']            keyPassword keystoreProperties['keyPassword']            storeFile file(keystoreProperties['storeFile'])            storePassword keystoreProperties['storePassword']        }    } buildTypes {    release {        signingConfig signingConfigs.release    } }并添加如下代码:

defaultConfig {        // TODO: Specify your own unique Application ID (-id.html).        applicationId "com.example.myflutter" //APPID        minSdkVersion 16                      // 可运行应用的最低版本的 Android 平台,由该平台的 API 级别标识符指定        targetSdkVersion 27                   // 指定运行应用的目标 API 级别。在某些情况下,这允许应用使用在目标 API 级别中定义的清单元素或行为,而不是仅限于使用那些针对最低 API 级别定义的元素或行为。        versionCode 1                         // 版本号        versionName "1.0"                  // 版本名称        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"    }最后一步打包flutter build apk

成功之后会显示如下图内容:

这样我们的apk包就新鲜出炉了;