2016-05-27 52 views
6

Bir android uygulaması için bir anahtar deposu dosyası oluşturan ve imzalayan bir komut dosyası var.Bir komutla anahtar deposu dosyası oluşturun

Mükemmel iyi çalışıyor ama daha çok insan müdahalesi olmadan çalıştırmak olurdu

i deposu oluşturmak için ne:

keytool -genkey -v -keystore my-release-key.keystore 
-alias alias_name -keyalg RSA -keysize 2048 -validity 10000 

Bu da kullanarak el ile aşağıdaki değerleri girin isteyip istemediğimi soruyor terminal: anahtar deposu şifresi, tam adı, kuruluş birimi, organizasyon adı, şehir, eyalet, ilçe kodu, anahtar şifresi.

i app imzalamak için ne:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 
-keystore my-release-key.keystore my_application.apk alias_name 

Bu da beni keystore'da için parolayı girmenizi ister.

Bu değerleri parametre olarak iletebildiğim için, komut dosyasının daha fazla etkileşim olmadan çalışması gerekir.

PS: ubuntu 14.04 LTS'yi kullanıyorum. Sen deposunu oluşturmak için böyle bir şey yapabileceği zaman :)

+2

Unutmayın ki, şifreler vb. Parametreler girerseniz, bunlar geçmişinizde veya kayıtlarınızda saklanabilirler – fractalwrench

+0

@fractalwrench Bunu dikkatinize sunduğunuz için teşekkürler, bunun için bir çalışma bulmam gerekecek. – PeterG

cevap

16

için

Teşekkür:

keytool -genkey -alias replserver \ 
    -keyalg RSA -keystore keystore.jks \ 
    -dname "CN=Mark Smith, OU=JavaSoft, O=Sun, L=Cupertino, S=California, C=US" \ 
    -storepass password -keypass password 

İşte iyi referanstır: https://pubs.vmware.com/continuent/tungsten-replicator-3.0/deployment-ssl-stores.html. Ve kavanozlar için anahtar deposu şifresi için "storepass" parametresi var. Hem senaryonun içine koyarsan, iyi olmalısın.

+1

Şimdiki endüstri standardı 'PKCS12' biçiminde anahtar deposu oluşturmak için' -deststoretype pkcs12' ekleyin. Başka bir iyi seçenek -keysize 4096' dir –