flutter如何打包发布android

  1. 打包发布android的准备

1.1 创建app keystore文件

如果有 keystore,请跳至下一步。如果没有,请通过以下命令来创建一个:

keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

其中:
-keystore 参数后的值: my-release-key.keystore, 表示一会儿要生成的那个 签名文件 的名称;请先保存好这个名称,因为后面发布项目期间会用到它。

-alias 参数后面的值:my-key-alias,后续发布项目期间也会用到,因此也需要保存好这个参数值;注意:这个参数的值可以根据自己的需要进行自定制。

当运行这个命令的时候,需要输入一系列的参数,和相关的口令的密码,一定要保存好相关的密码,后期会用到。

当生成了签名之后,这个签名,默认保存到了自己的用户目录下

将自己的签名证书 copy 到 android/app 目录下

注意:保持 keystore 文件的私密性; 不要将它加入到代码控制中(最好是将keystore 文件添加到 .gitignore 忽略文件)

1.2 引用应用程序中的 keystore

创建一个名为 <app dir>/android/key.properties 的文件,其中包含对密钥库的引用:

storePassword=<password from previous step>
keyPassword=<password from previous step>
keyAlias=key
storeFile=<../key.jks>

1.3 在 gradle 中配置签名
通过编辑 <app dir>/android/app/build.gradle 文件为您的应用配置签名:

替换:
android {
为:

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

android {
替换:

buildTypes {
    release {
        // TODO: Add your own signing config for the release build.
        // Signing with the debug keys for now, so `flutter run --release` works.
        signingConfig signingConfigs.debug
    }
}
为:

signingConfigs {
    release {
        keyAlias keystoreProperties['keyAlias']
        keyPassword keystoreProperties['keyPassword']
        storeFile file(keystoreProperties['storeFile'])
        storePassword keystoreProperties['storePassword']
        }
}
buildTypes {
    release {
        signingConfig signingConfigs.release
    }
}
  1. 构建一个发布版APK即release版本
    使用命令行:
    cd <app dir> (<app dir> 为我们的工程目录). 运行 flutter build apk (flutter build 默认会包含 --release 选项).
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 记得flutter出来的时候,官方推荐的是使用IntelliJ IDEA,当时个人尝试了一下,比较麻烦,整个过程比...
    大鹏鸟阅读 2,599评论 0 3
  • 最近在项目中遇到需要实现 Apk 多渠道、定制化打包, Google 、百度查找了一些资料,成功实现了上述功能,在...
    看一季残花落幕阅读 2,523评论 1 8
  • 一、一切皆有预兆,只是当时懵懂 晚上时间十点,不知道如何下笔。 还是不能心平气和的回忆,每次想起,眼泪就出来了。我...
    执着的小九2014阅读 172评论 0 0
  • 西汉与匈奴和亲,以汉室宗女嫁于匈奴单于。另外赠送匈奴一些财务和开放边塞关市允许人民自由交易。 汉代...
    谢小倩0410阅读 191评论 0 1
  • 今天的课,是在294的大人间里上的,哈哈哈哈哈哈哈哈哈…… 对于李雨桐薛之谦的事件,我,其实想说很多,可是,最后还...
    子誓不染阅读 202评论 0 0