Mac flutter打包apk

1.首选打包apk包需要有签名文件,

eclipse的签名文件是以.ketstore为后缀的文件;Android Studio是以.jks为后缀的文件。

本文使用的是Android Studio自带的debug.keystore密钥库。 

Mac端生成签名文件,在终端执行

//生成sign.jks
keytool -genkey -v -keystore ~/sign.jks -keyalg RSA -keysize 2048 -validity 10000 -alias sign
-----------------------------生成文件路径--------------------------------------------------别名--
//查看证书SHA1
keytool -list -v -keystore sign.jks -alias sign -storepass android -keypass 123456
---------------------------文件路径----------别名-----------秘钥库密码---------sign文件密码--
//-keystore sign.jks
//-alias sign 
//-storepass android
//-keypass 123456

完整的生成 代码
keytool -genkeypair -alias sign  -keyAlg RSA -keysize 2048 -dname "C=CN, O=ABC, OU=XYZ, CN=MY_SERVER" -validity 10000 -keypass 123456 -keystore ~/sign.jks -storepass  android

终端执行过程:

 查看签名文件

 二、Android Studio文件配置

1、导入sign.jks

在Flutter工程中/android/app/目录下导入sign.jks

2、创建key.properties

在Flutter工程中/android/key.properties创建该文件。其中key.properties为创建的文件 。里面内容如下:

storePassword=android
keyPassword=123456
keyAlias=sign
storeFile=sign.jks 

密码解释:

storeFile 签名文字
keyAlias  文件的别名
storepass android   这个是在创建签名的时候输入的  秘钥库秘钥
keyPassword 123456    为设置的秘钥串

3、配置/android/app/build.gradle文件

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

android {
    signingConfigs {
        release {
            keyAlias 'sign'
            keyPassword 'android'
            storeFile file('key/sign.jks')
            storePassword '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.release
        }
    }
}

修改这三个地方

4.进入到flutter的工程目录下,执行

flutter build apk

如果出现如下问题:

FAILURE: Build failed with an exception.                                
                                                                        
* What went wrong:                                                      
Execution failed for task ':app:validateSigningRelease'.                
> Keystore file '/xxx/basedemo/android/app/sign.jks' not found for signing config 'release'.
                                                                        
* Try:                                                                  
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
                                                                        
* Get more help at https://help.gradle.org                              
                                                                        
BUILD FAILED in 1s    

查看sign.jks文件是否在/android/app/目录下                  

 

参考地址:https://www.jianshu.com/p/fabcfd621e01 

参考地址:https://blog.csdn.net/yidichaxiang/article/details/81741622

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值