flutter android打包流程 Mac

1.用户权限配置 修改AndroidManifest.xml

配置相应的权限 如

     

2. 应用程序签名

2.1.创建一个秘钥库

在 macOS 或者 Linux 系统上,执行下面的命令,不用修改

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

如果出现如下错误

No Java runtime present, requesting install.

需要安装java SDK或者使用

/Applications/Android\ Studio.app/Contents/jre/jdk/Contents/Home/bin/keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

之后是输入各种口令,密码(如123456)、姓名、国家等


截屏2021-01-14 下午4.17.02.png

2.2.在APP中引用秘钥库

在Android的根目录下创建 一个名为key.properties的文件,它包含了秘钥库位置的定义:

storePassword = 上一步中的密码 如123456
keyPassword = 上一步中的密码 如123456
keyAlias = key
storeFile = 秘钥库的位置 e.g /Users/Ray/key.jks

注意:这个文件一般不提交到代码仓库,可以修改.gitignore文件

/android/key.properties

2.3在gradle中配置签名

通过编辑/android/app/build.gradle文件来为我们的APP配置签名:

  1. 找到 android 代码块
addroid {
       ...
  }

在此代码块上方添加

def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

2 把 buildTypes 代码块注释,后添加

    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
            storePassword keystoreProperties['storePassword']
        }
    }
    buildTypes {
        release {
            signingConfig signingConfigs.release
        }
    }

3 .打包应用程序,终端运行

生成 apk文件

flutter build apk

AAB文件(谷歌推荐)

flutter build appbundle

你可能感兴趣的:(flutter android打包流程 Mac)