Имам проект за Android (с Android Studio и Gradle) и Jenkins CI Server, които изграждат този.
Това, което се опитвам да направя, е да генерирам напълно неподписан сертификат.
Всъщност, когато сървърът създава приложението, той генерира -unsigned.apk, но изглежда, че този apk е подписан от < em>сертификат за разработчици.
Всъщност проверих това, като изтеглих apk и изпълних следната команда (след като прочетох Как да проверя дали apk за Android е подписан със сертификат за издаване?)
jarsigner -verify -verbose -certs app-unsigned.apk | grep Android
Така че изходът е като
X.509, CN=Android Debug, O=Android, C=US
(с много редове)
Колкото и да си струва, създавам приложението, изпълняващо задачите на gradle:
clean assemble lint
И след това ципах всички apk файлове, като стартирах
zipalign -f -v 4 *.apk
Моят build.gradle не съдържа никаква опция за подписване
android {
compileSdkVersion 19
buildToolsVersion '19.0.1'
defaultConfig {
minSdkVersion 10
targetSdkVersion 19
}
buildTypes {
debug {
// proguard
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
// ZipAlign
zipAlign false
}
release {
// proguard
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
// ZipAlign
zipAlign true
}
}
productFlavors {
defaultFlavor {
proguardFile 'proguard-rules.txt'
}
}
lintOptions {
// Don't abort if Lint finds an error, otherwise the Jenkins build
// will be marked as failed, and Jenkins won't analyse the Lint output
abortOnError false
}
}
Какво мога да опитам след това?
If you build your application unsigned, then you will need to manually sign and align the package.
Ще го пробвам. - person Quentin Klein   schedule 12.05.2014