Saya kehilangan file .keystore saya?

91

Ok folks .. singkatnya, saya mengembangkan di komputer yang tidak lagi dapat saya akses. Saya bisa mendapatkan kembali kode sumbernya, tetapi bukan file .keystore yang digunakan untuk menandatangani dan menerbitkan aplikasi saya ke pasar (dengan beberapa pembaruan). Apakah saya, dan pengguna saya yang malang, kurang beruntung jika saya ingin memperbarui?

Saya tahu kata sandi yang digunakan untuk menandatangani kunci (setidaknya satu dari tiga kata sandi), jadi dapatkah saya membuat yang lain? Pasti ada jalan keluarnya .. bagaimana dengan hard drive yang gagal?

eportermd
sumber
14
Jika ada adalah jalan di sekitarnya, itu akan mengalahkan tujuan keamanan seluruh yang seharusnya untuk melayani!
Santa
2
Periksa jawaban ini Sekarang mungkin.
Pengembang Vicky

Jawaban:

78

Menghadapi masalah yang sama. Saya mencoba memulihkannya melalui alat pemulihan file yang dihapus, tetapi gagal. Jadi, tidak ada cara lain: Anda harus mengeluarkan aplikasi lain.

Umumnya, satu-satunya saran yang ada di keystore: "selalu cadangkan!"

Vladimir Ivanov
sumber
1
Saya telah menghadapi ini dan harus menerbitkan kembali versi baru aplikasi saya. Sejak itu semua kunci saya ada di Dropbox.
Varun
Setelah memperbarui ke Android Studio 3.3, keystore lama saya tidak lagi diterima selama penandatanganan aplikasi. Pesan kesalahan "Tidak dapat memulihkan kunci" ditampilkan.
Yar
Itu terjadi dengan setiap peningkatan Android Studio. Saya mengalami masalah yang sama dua kali dengan peningkatan dari 4.0 ke 4.1.
Toni Garabedyan
60

Sekarang mungkin jangan khawatir, berikut adalah langkah lengkap dan terakhir untuk mengatur ulang file .JKS.

Saya berhasil mengistirahatkan KUNCI saya

Langkah 1

Unduh UPLOAD SERTIFIKAT (nama file - upload_cert.der ) dari Konsol Google Play Store Anda

untuk mendownload file upload_cert.der

Langkah 2

Buka LINK ini https://support.google.com/googleplay/android-developer/contact/otherbugs Dan isi formulir aplikasi dengan ID Email Anda yang valid dan unggah file (upload_cert.der).

Isi formulir aplikasi

Langkah-3

Sekarang Anda akan mendapatkan Email dari tim dukungan, dan mereka tidak memerlukan file .JKS Anda tetapi file .PEM di sini adalah Sampel email.

masukkan deskripsi gambar di sini

Langkah-4

untuk mengonversi file .JKS menjadi file .PEM Anda hanya perlu mengunduh KeyStore Explorer JKS ke PEM

Setelah membalas Mail, tunggu selama 48 hingga 72 jam pengisian keystore Anda akan disetel ulang.

Pengembang Vicky
sumber
7
Bagaimana jika masuk Aplikasi Google Play tidak diaktifkan untuk suatu aplikasi?
Vipul Behl
Tidak ada yang ditemukan kecuali itu. Google secara resmi mengumumkan teknik penandatanganan Aplikasi Android baru pada bulan Mei 2017.
Pengembang Vicky
1
pada langkah 3. apakah saya perlu membuat file jks baru dan mengubahnya menjadi file pem dan mengirimkannya ke sebagai repaly mail kepada mereka. apakah langkah ini benar ???
giveJob
1
ya Anda harus membuat file JSK baru dan Konversikan ke PEM @HemanthSP
Pengembang Vicky
ya saya melakukannya, dan sekarang keystore baru saya memenuhi syarat untuk diunggah, saya mendapat konfirmasi dari email google
giveJob
35

Hingga hari ini, kehilangan kunci tidak memungkinkan untuk memperbarui aplikasi Anda dengan versi baru. Dalam kasus seperti itu, satu-satunya solusi adalah memublikasikan aplikasi baru, dengan nama dan kunci paket baru, dan meminta semua pengguna Anda untuk menginstalnya.

Mulai hari ini, kunci penandatanganan aplikasi di Konsol Play sekarang dikelola dengan aman oleh Google Play, artinya Anda hanya bertanggung jawab untuk mengelola kunci upload Anda. Jika kunci upload Anda disusupi atau hilang, tim operasi pengembang Google dapat membantu dengan memverifikasi identitas Anda dan menyetel ulang kunci upload Anda. Google masih akan menandatangani ulang dengan kunci penandatanganan aplikasi yang sama, memungkinkan aplikasi untuk memperbarui seperti biasa.

Untuk aplikasi yang sudah ada , diperlukan transfer kunci penandatanganan aplikasi Anda ke Google Play. Untuk aplikasi baru , Google dapat membuat kunci penandatanganan aplikasi Anda. Setelah terdaftar dalam penandatanganan aplikasi, Anda menandatangani APK dengan kunci upload, yang digunakan Google untuk mengautentikasi identitas Anda. Mereka kemudian akan menghapus tanda tangan itu dan menandatangani ulang aplikasi Anda dengan kunci penandatanganan aplikasi.

Referensi: Bantuan Konsol Play> Kelola kunci penandatanganan aplikasi Anda

aygul
sumber
13

Mungkin untuk waktu yang lama.

  1. Ikuti petunjuk di Pusat Bantuan Android Studio untuk membuat kunci baru. Ini harus berbeda dari kunci sebelumnya. Alternatifnya, Anda dapat menggunakan baris perintah berikut untuk membuat kunci baru:

keytool -genkeypair -alias newalias -keyalg RSA -keysize 2048 -validitas 9125 -keystore nameofkeystore.jks

Kunci ini harus berupa kunci RSA 2048 bit dan memiliki validitas 25 tahun.

  1. Ekspor sertifikat untuk kunci itu ke format PEM:

keytool -export -rfc -alias newalias -file upload_certificate.pem -keystore nameofkeystore.jks

Kemudian unggah file pem ini dan isi formulir dan kirimkan ke situs ini . Dan kemudian Anda akan menerima email setelah kami mendaftarkan kunci unggahan baru. Hanya menerima permintaan setel ulang kunci dari pemilik akun Konsol Play .

Semuanya baik dan bagus. Anda dapat menerbitkan apk rilis baru dengan file jks baru Anda.

ksgngrkn.dll
sumber
2
Ini hanya berfungsi jika Anda telah mengaktifkan Penandatanganan Aplikasi Google Play .
Sumit
tidak . tidak perlu Penandatanganan Aplikasi Google Play. setidaknya saya tidak mengaktifkannya.
ksgngrkn
Apakah ini didokumentasikan di mana saja?
Sumit
Ini hanya berfungsi untuk aplikasi penandatanganan aplikasi. Saya baru saja mengkonfirmasi.
Euridice01
11

Jika Anda mengetahui kata sandi keystore, Anda masih belum memiliki kunci pribadi terkait untuk menandatangani aplikasi Anda. Anda juga tidak memiliki kesempatan untuk membuat kunci pribadi yang sama yang sesuai dengan kunci publik Anda.

Oleh karena itu: Selalu backup file keystore Anda. Ini sama pentingnya dengan kode sumber Anda.

saksofon
sumber
2
Jadi, jika saya melakukannya dengan benar, kunci pribadi ini dibuat secara acak per keystore, bukan? Dan satu-satunya yang kita tahu adalah kunci publiknya, bukan?
iCantSeeSharp
Jika Anda memiliki akses resmi ke keystore, Anda juga dapat mengekspor kunci pribadi dan mengimpornya ke keystore atau layanan lain.
saksofon
Apakah ideal untuk menyimpan file keystore dan kunci bersama dengan repo Anda?
Neon Warge
5

Jika Anda telah mengaktifkan penandatanganan Aplikasi Google Play untuk aplikasi Anda, Anda tidak perlu khawatir.

Untuk memeriksa apakah Anda telah mengaktifkan penandatanganan Aplikasi Google Play, buka Pengelolaan rilis -> Penandatanganan Aplikasi, di Konsol Google Play Anda.

Jika diaktifkan, Anda dapat menghubungi Dukungan Google Play dengan mengisi formulir dukungan atau Anda juga dapat memilih obrolan langsung dengan personel dukungan di sini: https://support.google.com/googleplay/android-developer/answer/7218994? hl = en

Jelaskan masalah Anda kepada mereka dan mereka akan memberi tahu Anda langkah selanjutnya yang mencakup pembuatan keystore RSA 2048 bit baru dengan validitas 25 tahun dan mengekspor kunci ke format PEM dan mengirimkannya melalui email kepada mereka.

Untuk mengekspor kunci ke format PEM:

keytool -export -rfc -alias upload -file upload_certificate.pem -keystore keystore.jks
Harsh Savergaonkar
sumber
3

Dari hari-hari yang panjang, saya juga mencari solusi untuk itu, tetapi tidak berhasil sampai sekarang. Jika Anda memiliki versi terakhir apk aplikasi, Anda dapat mengambil sertifikat dari itu dengan menggunakan perintah jarsigner cmd. Tetapi Anda memerlukan kunci pribadi untuk pembaruan. Google Play tidak memberikan relaksasi apa pun untuk itu.

Ranjit Chandel
sumber
3
apakah Anda memiliki info lebih lanjut tentang cara melakukan ini?
Zabs
1

Saya telah menghasilkan apk yang ditandatangani menggunakan studio android, jadi di "jalur penyimpanan kunci " saya hanya mengetik beberapa nama tanpa ekstensi, dan mengisi popup ini dan menandatangani aplikasi. masukkan deskripsi gambar di sini

lain kali untuk menerbitkan aplikasi saya tidak ingat jalur dan nama tempat itu dibuat.

entah bagaimana saya menemukan lokasi default yaitu "C: \ Program Files \ Java \ jdk1.8.0_45 \ jre \ bin": \ jre \ bin

dan di folder itu pendek menurut tanggal, lalu saya mencoba dengan file terbaru dan itu berhasil untuk saya.

Catatan: Anda harus mengingat kata sandi penyimpanan kunci dan kata sandi kunci.

Murari Kumar
sumber
1

Mungkin sekarang, Setelah Mei 2017 Anda dapat memperbarui aplikasi Anda jika Anda kehilangan kata sandi keystore atau keystore. Anda tidak dapat memulihkan keystore Anda yang hilang tetapi Anda dapat mengganti keystore di playstore. Klik disini

Proses penandatanganan aplikasi:

Anda dapat mengunggah APK yang ditandatangani dengan kunci penandatanganan aplikasi asli sebelum atau setelah Anda ikut serta dalam penandatanganan aplikasi oleh Google Play.

Jika Anda mulai menggunakan Android App Bundle, Anda dapat mengujinya di track pengujian saat Anda menggunakan APK yang ada dalam produksi. Begini prosesnya:

  1. Tanda tangani app bundle atau APK Anda dan unggah ke Konsol Play.
  2. Bergantung pada apa yang Anda unggah, berikut ini perbedaan proses penandatanganan:

    • App bundle: Google menghasilkan APK yang dioptimalkan dari app bundle Anda dan menandatanganinya dengan kunci penandatanganan aplikasi.
    • APK ditandatangani dengan kunci unggah: Google memverifikasi dan menghapus tanda tangan Anda dari APK, lalu mengundurkan diri APK dengan kunci penandatanganan aplikasi.
    • APK ditandatangani dengan kunci penandatanganan aplikasi: Google memverifikasi tanda tangan. Google mengirimkan APK yang ditandatangani kepada pengguna.
Parmita Koradiya
sumber
0

Pasti ada jalan keluarnya .. bagaimana dengan hard drive yang gagal?

Saya ingin menambahkan bahwa selalu simpan cadangan keystore di penyimpanan cloud seperti Google Drive, Dropbox, atau kirimkan ke email Anda sendiri.

Yogesh Umesh Vaity
sumber
Tentu saja ada cara untuk mengatasi ini, hanya saja google tidak akan melakukannya. Windows Store (bahkan jika tidak ada yang menggunakannya) memungkinkan Anda menandatangani aplikasi dari Visual Studio (Anda hanya perlu masuk dengan akun toko Anda), dan kemudian dapat dengan mudah diunggah ke toko. Google--; Microsoft ++;
Juan Carlos
0

Ya, Anda dapat merilis pembaruan ke aplikasi yang ada dengan kunci baru!

Google sekarang memungkinkan Anda untuk mengunggah kunci baru ke aplikasi yang ada dengan meminta mereka untuk menyetel ulang melalui email / obrolan langsung di Dukungan Google.

Proses ini membutuhkan waktu 1-2 hari kerja.

Saya mengikuti proses ini dan mengunggah pembaruan ke aplikasi yang sama dengan kunci baru. Tim teknis Google Play Store membantu saya mengatur ulang kunci sebelumnya.

Zair Abbas
sumber