zoukankan      html  css  js  c++  java
  • MacOS系統Flutter打包apk

    一、打包前需要做一些基本设置的确认

    1.应用名
    2.权限设置
    3.applicationId:应用唯一标识符
    4.versionCode:版本号
    5.versionName:版本名称
    6.APP应用图标
    7.APP启动页
    以上对应的设置可以参考Flutter官网

    二、APP签名(以下操作均针对macOS)

    创建keystore
    如果你之前已经创建过keystore的话,可以跳过此步骤。如果没有,请打开终端运行以下命令来创建一个:
    keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

     密碼是屏蔽的,輸入回車即123
    敲回车之后就会让你输入打开keystore文件的密码,其他根据具体情况去配置就可以了,最后敲,然后回车即可,下面会告诉你生产该文件的路径

    在应用程序中引用keystore
    首先创建一个文件key.properties
    路径为<app dir>/android/key.properties,其中<app dir>就是你app的文件路径,key.properties为文件名

     
    项目中配置keystore.png

    在该文件中输入对应的配置

    storePassword=<生成keystore时设置的密码>
    keyPassword=<生成keystore时设置的密码>
    keyAlias=key
    storeFile=<location of the key store file, e.g. /Users/<user name>/key.jks>即生成文件的key.jks的文件路径

     

    在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
        }
    }

    现在,您的应用的release版本将自动进行签名。

    最后
    使用命令行:
    cd <app dir> (<app dir> 为您的工程目录).
    运行flutter build apk (flutter build 默认会包含 --release选项).
    打包好的发布APK位于<app dir>/build/app/outputs/apk/app-release.apk
    最后注意:使用该命令打包时有可能提示打包很慢,是因为要使用gradle,大家懂的,所以需要耐心等待

  • 相关阅读:
    使用 Traefik 代理 UDP 服务
    KubeOperator界面,集群详情中的存储,存储提供商
    centos7使用yum方式安装node_exporter
    Traefik2.3.x 使用大全(更新版)
    jumpserver堡垒机版本升级,从2.14.2升级到2.16.3
    Traefik 2.0 实现灰度发布
    matplotlib 中文问题
    数据采集实战(五) 当当网童书排名
    雅可比行列式迭代及优化(golang版)
    mysql8.x docker 远程访问配置
  • 原文地址:https://www.cnblogs.com/ssjf/p/11850151.html
Copyright © 2011-2022 走看看