Android Studio: anahtar kurtarılamıyor


95

StackOverflow'u bir süredir aradım ama emin olmak istedim ...

Bir süre önce dizüstü bilgisayarımı sildim ve tüm dosyalarımı yedekledim. Android.jks dosyam yedeklendi ve yerine oturdu. İmzalı bir APK oluşturmaya çalıştığımda, bana herkesin aldığı aynı korkunç hatayı veriyor:

Error:Execution failed for task ':app:packageRelease'.
> Failed to read key conjugationappkey from store     
"/Users/wasimsandhu/android.jks": Cannot recover key

Android.jks'im var, anahtar şifresi, anahtar deposu şifresi. Her şey doğru. Neyi kaçırıyorum? Tüm dosyalarımı yedekledim, bu yüzden ihtiyacım olan belirli bir dosya varsa onu bulabilirim, ama ne yapacağım hakkında hiçbir fikrim yok ...

Herhangi bir anlam ifade etmiyorsam, lütfen benden açıklamamı isteyin. Teşekkürler!


2
Anahtar deposu şifrenizde & veya @ karakterini kullandıysanız, cevap bölümüne kaydırmayın, sharma'nın cevabı için bu bağlantıya gidin .
meyasir

Yanıtlar:


116

Bunun herhangi bir ilgi görmemesine şaşırmadım, ama işte bu gönderiye rastlayan herkes için yaptığım şey.

Dediğim gibi, tüm dosyalarım yedeklendi. Android.jks dosyasını eski bir yedekten geri yükledim. Sonra bir Terminal penceresi açtım ve şunu yazdım:

keytool -storepasswd -new [insert new keystore password] -keystore [insert keystore file name]

keytool -keypasswd -alias [insert alias] -new [insert new key password] -keystore [insert keystore file name]

Anahtar deposu ve anahtar şifreleri aynı olmalıdır! Bu benim sorunumu çözdü ve umarım size de yardımcı olur.


5
Teşekkür ederim! Şifrelerin aynı olması gerektiğini nasıl anladınız? Bugün bu hatayı almaya başladım. Şimdiye kadar her şey iki farklı şifreyle iyi çalıştı.
Alen Siljak

6
Şifrelerim aynı ve hala bu hatayı alıyorum. Aynı anahtarla önceki sürümü imzalayabildim. Şimdi ne yapmalıyım?
Tushar Gogna

1
Ben de aynı sorunla karşı karşıyayım. Dünden önceki gün başarıyla imzalı APK oluşturdum ve bugün yine aynı sorunu. Herhangi birinin kalıcı bir çözümü olabilir mi?
Neo

5
Bu hatayı hala benim durumumda veriyor: "keytool error: java.security.UnrecoverableKeyException: Anahtar kurtarılamıyor"
0xAliHn

2
Benim için de aynı sorun. İlk satırı çalıştırdıktan sonra bir şifre sorar. Veriyorum ama sonra "anahtar aracı hatası ... anahtar deposu değiştirildi veya şifre yanlış" diyor
Ammar Buhari

64

[Güncelleme: Bu artık Android studio 3.0 ve üzeri sürümlerde çalışmamaktadır]

Benzer bir sorunla karşılaştım ve internette 3 saat harcadıktan sonra çözümlerin hiçbiri işe yaramadı, derinlemesine araştırmaya karar verdim.

Bunu şu şekilde çözdüm: Benim için "Anahtar kurtarılamıyor" hatası, çözdüm: için "Anahtar , "Anahtar deposu şifrem" doğru, ancak "Anahtar Şifresi" (anahtar takma adının) yanlıştı . Her iki şifrenin de aynı olduğundan oldukça emindim ama dehşete kapılmadılar ve ikinci şifrenin ne olduğunu bilmiyordum. Bulunabilen günlük dosyasını kontrol etmeden önce bir APK imzalamış olduğum için:

  • C: \ Kullanıcılar \ kullanıcı adınız \ .AndroidStudio2.1 \ system \ log \

Apk'yi imzaladığınız tarihten itibaren günlük dosyalarını açın ve aşağıdaki girişleri arayın:

 INFO - .project.GradleExecutionHelper - Passing command-line args to Gradle Tooling API: [--configure-on-demand, -Pandroid.injected.invoked.from.ide=true, 
-Pandroid.injected.signing.store.file=E:\HobbyProjects\XYZProject\gpsjs.jks, 
-Pandroid.injected.signing.store.password=***KeyStorePassword***, 
-Pandroid.injected.signing.key.alias=***alias_name***, 
-Pandroid.injected.signing.key.password=***Key password***, 

Ve şifreleri düz metin olarak bulacaksınız. Şifreleri unutsanız bile bu işe yarayacaktır.


3
EVET! EN SONUNDA! Parolam, bahsettiğiniz klasörün içindeki "fikir" dosyasındaydı. Bir şifre kırıcı kullanmayı bile denedim ama bana Alias ​​geçişini verdi ve bunun anahtar deposunun olduğunu düşündüm, ama değildi.
George

Teşekkürler! Ben kullanıyordum master passwordapk imza atılırken girdiğim o, ama sadece tekrarlamak için gerekli key password.
JCarlosR

8
Bu, AndroidStudio3.0 için çalışıyor mu? Şifrelerimi ********* olarak görüyorum.
TheLearner

1
Dosyam şunu söylüyor: -Pandroid.injected.signing.store.password = *********, -Pandroid.injected.signing.key.alias = mykey, -Pandroid.injected.signing.key.password = * ********
Androidcoder

2
@Androidcoder Android stüdyo ekibi, son sürümlerde bu boşluğu giderdi.
Build3r

24

Herhangi birine yardımcı olabilirse - benim durumumdaki sorun "Anahtar deposu şifresi" ve "Anahtar şifresi" nin yanlış olmasıydı.


14

Verilen tüm önerileri cevaplarda ve yorumlarda denedim :(

Anahtar parolam ve anahtar deposu parolam tamamen aynı. Android Studio 3.4'ü kullanma

Benim için işe yarayan şey, Android Studio'dan çıkmaya zorlamak, yeniden başlamak, projeyi temizleyip yeniden oluşturmak ve ardından imzalı apk oluşturmaktı. tüm yapılandırmalar tamamen aynı ama bu sefer işe yaradı


3
Projeyi temizledim ve yeniden inşa ettim ve sonra iyi çalıştı. +1 yukarı
sanjeeb

1
Bu benim için çalıştı. Bir IDE'nin bunun gibi önemli bilgilerin yönetimini bozması için harika bir "özellik" değil.
Marc-André Weibezahn

Android Studio 3.6.2 PS'de onaylandı Seni seviyorum
bjm904

9

[Android Studio 3.3] İmzalı bir APK oluştururken "anahtarı kurtarılamıyor" hatası aldım. Şifremle doğruluğundan eski idea.log kontrol edebildi: Anahtar Deposu ve Anahtar şifreleri vardı özdeş ve doğru.

Terminalde anahtar şifresinin güncellenmesi:

keytool -keypasswd -alias MYKEY -keystore KEYSTORE

Anahtar deposu ve anahtar için aynı parolalara sahip olmak artık mümkün görünmüyor. Anahtar aracı, denediğimde bana bir hata verdi. Anahtar için farklı bir şifre ayarladıktan sonra, Android Studio imzalı bir APK oluşturdu.

Belki önceki Android Studio sürümlerinde şifrelerin aynı olması gerekiyordu - şimdi tam tersi olabilir.


Uygulamamı 2 hafta önce güncelledim ve bugün çalışmıyor. Parolaları aynı olacak şekilde değiştirmek ve Android Studio'yu güncellemek için bunu kullanıyorum, şimdi yeni bir sürümü yeniden değerlendirdim.
Alejandro Cumpa

@ Build3r'ün cevabı ve bunun arasında, her iki şifreyi de farklı, kabul edilebilir değerlere ayarlayabildim ve uygulamamı başarıyla imzaladım. Teşekkürler beyler!
Peter Gluck

3

Birine yardımcı olabilir.

Birkaç gün önce android projemi gitlab'a yedekledim ve ardından Windows 10'u yükledim. Bundan sonra onu klonladım. Anahtar takma adı ve her iki parolayı da tam olarak biliyordum.

Daha sonra imzalı apk oluştururken bu kimlik bilgilerini girdim ancak başarısız oldum.

Jks dosyasını uygulama klasörüne yerleştirmiştim. Oradan kaldırdım ve android projesinin kök klasöründe ayrı bir klasör oluşturdum ve jks dosyasını yerleştirdim var.

Sonra temizlemeyi, projeyi yeniden oluşturmayı denedim ve ardından android stüdyosunu yeniden başlattım. Sonunda imzalı apk'yi oluşturdu: D


2

Bu sorun yalnızca Anahtar Parolanız veya Anahtar Deposu Parolanız yanlış eşleştiğinde oluşur.


2

Şifrelerim aynıydı ve hala bu hatayı alıyorum. Android stüdyosunu temizlemek, yeniden oluşturmak ve yeniden başlatmak benim için işe yaramadı. Benim için çalışan tek çözüm, keystore.jks dosyasını yeni bir konuma taşımaktı. Bu yardımcı olur umarım.


1

SigningConfigs bölümünü uygulama gradle dosyamdan kaldırdım. Ardından projeyi yeniden inşa etti ve tekrar çalıştı.


0

Android Studio'da Proje Yapısı / İmzalama sekmesini kontrol etme şansım oldu ve düz metinde listelenen anahtar şifresini ve mağaza şifresini buldum. Birbirleriyle aynı olduklarını sanıyordum ama değillerdi.


0

Tutulma çalıştırıyorsanız, kapatmayı deneyin ve tekrar imzalı bir apk oluşturmayı deneyin.

Benim durumumda, tüm şifrelerin doğru olduğunu kontrol ettim ve hatta Android stüdyosundan yeni bir anahtar deposu oluşturdum. Yine de işe yaramadı, ancak çalışmakta olan tutulmayı kapattıktan sonra, kullandığım eski anahtar deposu veya yeni oluşturulmuş biriyle her şey çalıştı.


0

İmza dosyamı ilk oluşturduğumdan önce sıkıştırdım. Bu hatayı aldığımda tekrar kullandım. Bir yedeğiniz varsa kullanabilirsiniz. Sanırım bir şeyleri onlar fark etmeden önce kırdık.


0

Ben de aynı problemle karşı karşıyaydım. Benim durumumda, projeyi gradle dosyalarıyla senkronize ettikten sonra bu sorunu çözdü. Bu birine yardımcı olabilir.


0

Sadece kaldırıldı .imlbenim dosyayı proje . Sonra projeyi yeniden şekillendirdi ve bir kez daha çalıştı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.