Android - zipalign 在 apksigner 之前失败
Android - zipalign fails before apksigner
我目前正在从 V1 签名 (jarsigner
) 升级到 V2 签名 (apksigner
)。 Jarsigner 一直在为我工作没问题,但是在我 运行 apksigner
.[= 之前,我 运行 在我的 build.gradle 中遇到 zipalign
的问题20=]
在命令行上,我知道 zipalign
有两次破解,这对我有用。
但是,当我在 Jenkins 上 运行ning zipalign
时,我收到了这个错误:
Process 'command '/Users/admin/Library/Android/sdk/build-tools/27.0.1/zipalign'' finished with non-zero exit value 1
我该怎么做才能使 zipalign
正常工作以便我可以使用 apksigner
?
我能够通过 try-catch 找到解决方案。它很丑,但它有效。
try {
println "Zipaligning ${apkFile.name}"
exec {
commandLine zipalign, '-f', '4', apkFile.canonicalPath, tempAPK.canonicalPath
}
} catch (err) {
// Zipalign twice if first zipalign fails
exec {
commandLine zipalign, '-f', '4', tempAPK.canonicalPath, signedAPK.canonicalPath
}
}
我目前正在从 V1 签名 (jarsigner
) 升级到 V2 签名 (apksigner
)。 Jarsigner 一直在为我工作没问题,但是在我 运行 apksigner
.[= 之前,我 运行 在我的 build.gradle 中遇到 zipalign
的问题20=]
在命令行上,我知道 zipalign
有两次破解,这对我有用。
但是,当我在 Jenkins 上 运行ning zipalign
时,我收到了这个错误:
Process 'command '/Users/admin/Library/Android/sdk/build-tools/27.0.1/zipalign'' finished with non-zero exit value 1
我该怎么做才能使 zipalign
正常工作以便我可以使用 apksigner
?
我能够通过 try-catch 找到解决方案。它很丑,但它有效。
try {
println "Zipaligning ${apkFile.name}"
exec {
commandLine zipalign, '-f', '4', apkFile.canonicalPath, tempAPK.canonicalPath
}
} catch (err) {
// Zipalign twice if first zipalign fails
exec {
commandLine zipalign, '-f', '4', tempAPK.canonicalPath, signedAPK.canonicalPath
}
}