我遵循了使用该网站https://flutter.io/android-release/
进行扑扑的步骤。当我运行flutter build apk时,出现此错误
Execution failed for task ':app:validateSigningRelease'.
> Keystore file filepath/key.jks> not found for signing config 'release'.
我想念它什么,所以它会签名发布?
当我在build.gradle中将行signingConfig signingConfigs.release
更改为signingConfig signingConfigs.debug
时,它可以工作,但是需要将其签名以便发布
我的build.gradle
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
文件夹结构:
Project
-Android
|-- .gradle
|-- app
| |-- src
| | `-- main
| | |-- java
| | |-- res
| | `-- AndroidManifest.xml
| `-- build.gradle
|-- gradle
| `-- wrapper
|-- gradle.properties
|-- gradlew
|-- local.properties
|-- proguard-rules.pro
|-- gradlew.bat
`-- key.properties
我在wrapper,java和res目录下没有文件
key.properties
storePassword=<placeholder1>
keyPassword=<placeholder1>
keyAlias=key
storeFile=</Users/Conner/key.jks>
答案 0 :(得分:6)
您必须删除'<'字符,它只是作为示例数据。
storePassword=yourpasswordhere
keyPassword=yourkeypasswordhere
keyAlias=youralias
storeFile=/your/path/key.jks
答案 1 :(得分:1)
为避免冲突,请将 key.jks 文件放在 android \ app \ key 文件夹中,然后在key.properties文件中添加
storePassword=yourpasswordhere
keyPassword=yourkeypasswordhere
keyAlias=youralias
storeFile=key/key.jks
答案 2 :(得分:0)
如果您使用的是Android Studio,并且要将密钥放置在android以外的任何其他文件夹中,则必须在 key.properties中为 storeFile 使用以下格式文件:
storePassword=app_bar_demo_key
keyPassword=app_bar_demo_key
keyAlias=app_bar_demo_key
storeFile=E:\\Dharmik\\Flutter\\Demo\\Keystore\\your_key_name.jks
我已经演示了我的密钥路径,但是您必须使用存储密钥的路径,但是应该使用' \\ '(双反斜杠)而不是'\'来分隔路径(如上所示)(单个反斜杠)。
使用此方法,您可以将密钥放置在所需的任何位置。