Flutter-Build An Android Release Apk

上一篇已经说过了,使用Android StudioBuild>Generate Signed Apk总是报错,无法打包release版的apk!
幸好,flutter提供了其他方式
下面是完整的打包过程,官方参考;如果要打包iOS参考
检查AndroidManifest.xml中的applicationuses-permissionapplicationIdversionCodeversionNameminSdkVersiontargetSdkVersion、替换图标等等就不赘述了!开发过Android的都知道

  • 准备

要打release 包,首先你得有个签名文件,没有的话cmd 执行keytool:

keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
-genkey      在用户主目录中创建一个key.jks文件
-v           显示密钥库中的证书详细信息
-alias       产生别名
-keyalg      指定密钥的算法  
-keystore    指定密钥库的名称(产生的各类信息将不在.jks文件中
-validity    指定创建的证书有效期多少天
-keysize     指定密钥长度

然后根据提示输入密钥库的口令、姓氏、省份、组织等等信息

    • 也可以通过AndroidStudio创建签名文件
      1.Build>Generate Signed Apk
      2.点击Create New...
      3.在下面的窗口中填写信息
      create key.JPG
  • 配置key.properties

<app dir>/android/目录下,创建一个key.properties文件
PS:<app dir>代表工程的根目录,下同
需要填写的内容

storePassword=<password from previous step>
keyPassword=<password from previous step>
keyAlias=key
storeFile=<location of the key store file, e.g. /Users/<user name>/key.jks>
storePassword    keystore 密码
keyPassword      key密码
keyAlias         key别名
storeFile        .jks文件路径
  • 配置Gradle

gradle文件路径<app dir>/android/app/build.gradle

    • 找到android {,在这一行上面配置key.properties信息
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
    • 继续向下,找到buildTypes {,在上面配置signingConfigs:
signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }

buildTypes更改为:

buildTypes {
        release {
           signingConfig signingConfigs.release
        }
    }
  • 开始打包了
    cd<app dir>,执行flutter指令
    flutter build apk //默认打包release包或者 flutter build --release
    打包的过程很快就完成了,会提示release包的路径,adb命令即可安装
    当然也可以直接在<app dir>先执行flutter install安装到电脑连接的手机上!

总体过程并不是很难,主要就是生成key文件,配置Gradle;我个人还是倾向于希望Android Studio修复Bug,可以通过点击Build>Generate Signed Apk来生成!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,890评论 25 709
  • 这一章主要针对项目中可以用到的一些实用功能来介绍Android Gradle,比如如何隐藏我们的证书文件,降低风险...
    acc8226阅读 7,729评论 3 25
  • 本文是转存自 FoolishDev的Android Studio 打包Apk,附传送门 。 本文只为自己做个记录,...
    Uk00阅读 1,994评论 0 6
  • Android Studio 打包 开发完一款Application之后,需要对其进行打包,才可以发布工用户使用(...
    狮_子歌歌阅读 77,891评论 1 29
  • 千年以恒 我们把五月裁为三截 如同在汨罗水边 一再掐断那些剑戟般的水草以及风之翅膀 疼痛,从楚地的骨殖彻夜蔓延 天...
    迟迟痴语阅读 219评论 0 4