Ste*_*son 1 android gradle android-gradle-plugin
我正在尝试使用 jenkins 工作来自动编译我的 APK 文件并使用我在文件夹中的密钥库对其进行签名。我试过这个:
SET JAVA_HOME=C:\Program Files\Java\jdk1.7.0_79
SET ANDROID_HOME=E:\androidsdk
SET PATH=%PATH%;%JAVA_HOME%;%ANDROID_HOME%
SET ZIPALIGN="%ANDROID_HOME%\build-tools\23.0.3\zipalign"
echo %cd%
gradlew assembleDebug & "%JAVA_HOME%\bin\jarsigner" -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore key-jenkins\MyKey.jks -storepass rusavon app\build\outputs\apk\app-debug-unsigned.apk Mypassword& %ZIPALIGN% -v 4 app\build\outputs\apk\app-debug-unsigned.apk app\build\outputs\apk\debug-r%SVN_REVISION%.apk
Run Code Online (Sandbox Code Playgroud)
但它不起作用。(它曾经在使用 gradle 而不是 gradlew 的其他项目中工作)。
您应该考虑在 build.gradle 中添加构建类型和签名配置,然后运行 ./gradlew assembleRelease
它应该构建一个签名的apk。
对 build.gradle 进行以下更改。
buildTypes {
// Debug Configuration
debug {
testCoverageEnabled = true
debuggable true
}
// Release Configuration
release {
testCoverageEnabled = false
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.txt'
signingConfig signingConfigs.release
}
Run Code Online (Sandbox Code Playgroud)
然后有这些签名配置:
signingConfigs {
debug {
storeFile file("xx-key.keystore")
storePassword "xx123"
keyAlias "xxxx"
keyPassword "xx123"
}
release {
keyAlias 'xxxx'
keyPassword 'xx123'
storeFile file('xxxxxx-Key.keystore')
storePassword 'xx12'
}
}
Run Code Online (Sandbox Code Playgroud)
运行命令以生成签名的 apk:./gradlew assembleRelease
| 归档时间: |
|
| 查看次数: |
1388 次 |
| 最近记录: |