flutter 找不到签名配置“release”的密钥库

rta7y2nd  于 2023-03-19  发布在  Flutter
关注(0)|答案(6)|浏览(228)

我在Flutter上运行此命令时遇到问题:flutter build appbundle --target-platform android-arm,android-arm64,android-x64,我需要运行它才能执行flutter build apk
build.gradle

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

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

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

key.properties

storePassword=XXXX
keyPassword=XXXX
keyAlias=key
storeFile="C:/Users/User/Key/key.jks"

错误:

* What went wrong:
Execution failed for task ':app:validateSigningRelease'.
> Keystore file 'D:\Projects\Flutter\iusefully\android\app\"C:\Users\User\Key\key.jks"' not found for signing config 'release'.
l0oc07j2

l0oc07j21#

我终于找到了答案,我的问题是在key.properties文件中。问题发生是因为我使用了storeFile="LOC".jks路径的此变量声明不应在" "引号中。
错误:storeFile="C:/Users/User/Key/key.jks"
右侧:storeFile=C:/Users/User/Key/key.jks
此外,我还将key.jks文件添加到/app文件夹中。

fgw7neuy

fgw7neuy2#

这个解决方案对我很有效...请按照以下说明操作
https://flutter.dev/docs/deployment/android#create-a-keystore
在www.example.com中key.properties,不要将值放在"" ex中:

storePassword=454545
keyPassword=456565
keyAlias=upload
storeFile= C:/Users/{profile}/upload-keystore.jks
guykilcj

guykilcj3#

将密钥位置从c更改为d驱动器...同时,c驱动器出现权限问题

fnx2tebb

fnx2tebb4#

对我来说,将文件{home}\.android\debug.keystore重命名为{home}\.android\debug.keystore.jks很有帮助

vatpfxk5

vatpfxk55#

对我来说,改变

password = myapp@123
keyAlais = myapp
jksFileName = myapp_keystore

变成

password = myapp@123
keyAlais = myapp
jksFileName = myapp_keystore.jks

已解决此问题。只需在key.properties中的密钥库文件名中添加.jks扩展名

nzrxty8p

nzrxty8p6#

除了t0m3r的答案外,在Windows上运行以下命令时:更改USER_NAME为你的用户名

keytool -genkey -v -keystore c:\Users\USER_NAME\upload-keystore.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload

相关问题