乐趣区

关于flutter:Flutter跨平台移动端开发Android-Studio-四步打包

应用 Flutter 实现挪动端 App 我的项目开发后,首次打包的步骤稍感简单,但相熟后也可驾轻就熟。经总结整个过程可分为四个步骤,即:创立 jks 密匙库 增加 properties 并指定 jks 更新 gradle 并指定 properties 执行 apk 生成命令

本文将逐渐演示如何四步生成 Android apk,并附加过程中可能遇到的问题及解决方案,若您有遇到其它相干问题,十分欢送在评论中留言,我和其余读者小伙伴们将帮忙解决并继续更新至此文,达到帮忙更多人的目标。若感本文对您有所帮忙请点个赞吧!


第一步:创立 jks 密匙库

在 Studio Terminal 对话框内输出 keytool 命令,其中 -keystore E:/key.jks 示意存储地位,-validity 10000 示意有效期单位是【天】,-alias key 示意别名。确认无误后回车

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

填写明码及其它所需的详细信息后,须要确认填写信息,输出字母 y 示意【确定】,输出 n 则会要求从新填写所有信息。之后回车

` 输出密钥库口令:(设置明码)再次输出新口令:(反复明码)您的名字与姓氏是什么?
  [Unknown]:  xxx
您的组织单位名称是什么?
  [Unknown]:  xxx
您的组织名称是什么?
  [Unknown]:  xxx
您所在的城市或区域名称是什么?
  [Unknown]:  xxx
您所在的省 / 市 / 自治区名称是什么?
  [Unknown]:  xxx
该单位的双字母国家 / 地区代码是什么?
  [Unknown]:  china
CN=xxx, OU=xxx, O=xxx, L=xxx, ST=xxx, C=china 是否正确?
  [否]:  y` 

生成实现后找到相应本地目录可获取 .jks 文件

` 正在为以下对象生成 2,048 位 RSA 密钥对和自签名证书 (SHA256withRSA) (有效期为 10,000 天):
         CN=xxx, OU=xxx, O=xxx, L=xxx, ST=xxx, C=china
输出 <key> 的密钥口令
        (如果和密钥库口令雷同, 按回车):
[正在存储 E:/key.jks]` 


第二步:增加 properties 并指定 jks

android 目录下创立 key.properties 并配置 storePassword(密匙库明码)、keyPassword(密匙明码)、keyAlias(别名)、storeFile(jks 文件地址)

增加如下四项配置信息,无需 ''"",在 = 号后间接填写即可

`storePassword=xxxx
keyPassword=xxxx
keyAlias=xxxx
storeFile=xxxx` 

第三步:更新 gradle 并指定 properties

android -> app -> build.gradle 文件中 android { 标签前减少 key.properties 文件解析地址

`def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

android {// 省略}` 

第四步:执行 apk 生成命令

在 Studio Terminal 内输出命令 flutter build apk,稍等片刻期待 apk 生成。生成胜利后即可在 build -> app -> outputs -> apk 文件夹中获取最终打包进去的 apk 文件装置试用

`D:flutterUtils**************************>flutter build apk
Initializing gradle...                                              1.2s
Resolving dependencies...                                           5.5s
Running Gradle task 'assembleRelease'...                           26.1s
Built buildappoutputsapkreleaseapp-release.apk (14.3MB).` 


常见问题 error:flutter 不是外部或外部命令,也不是可运行的程序, 或批处理文件。

环境变量未配置或未配置正确。关上 我的电脑 -> 高级零碎设置 -> 环境变量 -> 用户变量 减少或查看以下三个变量

PATH:本地 flutter bin 目录门路
PUB_HOSTED_URL:https://pub.flutter-io.cn(固定,国内需设置)
FLUTTER_STORAGE_BASE_URL:https://storage.flutter-io.cn(固定,国内需设置)

其中 PATH 若已存在则在尾部增加 ; 后追加即可,不存在则新建用户变量并增加


常见问题 error:Execution failed for task‘:app:validateSigningRelease’.

查看 key.properties 文件中 .jks 的地址配置的是否正确,且 windows 零碎下须要将 .jks 地址中的 ` 替换为 /`

退出移动版