Tôi bị mất tệp .keystore của mình?


88

Ok mọi người .. câu chuyện ngắn, tôi đang phát triển trên một máy tính mà tôi không còn quyền truy cập. Tôi đã có thể truy xuất mã nguồn, nhưng không phải tệp .keystore được sử dụng để ký và xuất bản ứng dụng của tôi ra thị trường (với một số bản cập nhật). Tôi và những người dùng kém của tôi có gặp may nếu tôi muốn cập nhật không?

Tôi biết mật khẩu được sử dụng để ký khóa (ít nhất nó là một trong ba mật khẩu), vậy tôi có thể tạo một mật khẩu khác không? Phải có một cách để giải quyết vấn đề này .. còn ổ cứng bị lỗi thì sao?


14
Nếu có một con đường xung quanh nó, nó sẽ đánh bại mục đích an ninh toàn bộ nó là vụ phải phục vụ!
Ông già Noel

Câu trả lời:


79

Đối mặt với cùng một vấn đề. Tôi đã cố gắng khôi phục nó thông qua các công cụ khôi phục tệp đã xóa nhưng không thành công. Vì vậy, không còn cách nào khác: bạn nên phát hành một ứng dụng khác.

Nói chung, lời khuyên duy nhất tồn tại trên keystores: "luôn sao lưu nó!"


1
Tôi đã phải đối mặt với điều này và phải phát hành lại phiên bản ứng dụng mới của mình. Kể từ đó tất cả các khóa của tôi đều có trên Dropbox.
Varun

Sau khi cập nhật lên Android Studio 3.3 kho khóa cũ của tôi không còn được chấp nhận trong quá trình ký ứng dụng. Thông báo lỗi "Không thể khôi phục khóa" được hiển thị.
Yar

56

Bây giờ có thể đừng lo lắng, đây là bước đầy đủ và cuối cùng để đặt lại tệp .JKS.

Tôi đã đặt lại thành công KEY của mình

Bước 1

Tải xuống CHỨNG NHẬN TẢI LÊN (tên tệp - upload_cert.der ) từ Bảng điều khiển Cửa hàng Google Play của bạn

để tải xuống tệp upload_cert.der

Bước 2

Truy cập LINK này https://support.google.com/googleplay/android-developer/contact/otherbugs Và điền vào biểu mẫu đăng ký với ID Email hợp lệ của bạn và tải tệp lên (upload_cert.der).

Điền vào mẫu đơn

Bước 3

Bây giờ bạn sẽ nhận được Email từ nhóm hỗ trợ và họ không cần tệp .JKS của bạn nhưng tệp .PEM ở đây là Mẫu email.

nhập mô tả hình ảnh ở đây

Bước 4

để chuyển đổi tệp .JKS thành tệp .PEM, bạn chỉ cần tải xuống KeyStore Explorer JKS sang PEM

Sau khi trả lời Thư, hãy đợi 48 đến 72 giờ lấp đầy kho khóa của bạn sẽ được đặt lại.


6
Điều gì sẽ xảy ra nếu đăng nhập Ứng dụng Google Play không được bật cho một ứng dụng?
Vipul Behl

Không tìm thấy gì ngoại trừ nó. Google chính thức công bố các kỹ thuật ký Android App mới trong tháng Năm năm 2017.
Nhà phát triển Vicky

1
ở bước 3. tôi có cần tạo tệp jks mới và chuyển đổi thành tệp pem và gửi tệp đó dưới dạng thư repaly cho họ không. bước này có đúng không ???
giveJob 25/09/18

1
có bạn phải tạo tập tin mới JSK và Chuyển đổi thành PEM @HemanthSP
Developer Vicky

vâng, tôi đã làm vậy và bây giờ kho khóa mới của tôi đủ điều kiện để tải lên, tôi đã xác nhận google mail
giveJob 4/1018

35

Cho đến hôm nay, việc mất chìa khóa sẽ khiến bạn không thể cập nhật ứng dụng của mình lên phiên bản mới. Trong những trường hợp như vậy, giải pháp duy nhất là xuất bản một ứng dụng mới, với tên gói và khóa mới và yêu cầu tất cả người dùng của bạn cài đặt ứng dụng đó.

Kể từ hôm nay, khóa ký ứng dụng trong Play Console hiện được Google Play quản lý an toàn, nghĩa là bạn chỉ chịu trách nhiệm quản lý khóa tải lên của mình. Nếu khóa tải lên của bạn bị xâm phạm hoặc bị mất, nhóm hoạt động nhà phát triển của Google có thể hỗ trợ bằng cách xác minh danh tính của bạn và đặt lại khóa tải lên của bạn. Google sẽ vẫn ký lại bằng cùng một khóa ký ứng dụng, cho phép ứng dụng cập nhật như bình thường.

Đối với các ứng dụng hiện có , nó yêu cầu chuyển khóa ký ứng dụng của bạn sang Google Play. Đối với các ứng dụng mới , Google có thể tạo khóa ký ứng dụng của bạn. Sau khi đăng ký tính năng ký ứng dụng, bạn ký APK của mình bằng khóa tải lên mà Google sử dụng để xác thực danh tính của bạn. Sau đó, họ sẽ tước bỏ chữ ký đó và ký lại ứng dụng của bạn bằng khóa ký ứng dụng.

Tham khảo: Trợ giúp Play Console> Quản lý khóa ký ứng dụng của bạn


13

Nó có thể trong một thời gian dài.

  1. Làm theo hướng dẫn trong Trung tâm trợ giúp Android Studio để tạo khóa mới. Nó phải khác với bất kỳ khóa nào trước đó. Ngoài ra, bạn có thể sử dụng dòng lệnh sau để tạo khóa mới:

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

Khóa này phải là khóa RSA 2048 bit và có hiệu lực 25 năm.

  1. Xuất chứng chỉ cho khóa đó sang định dạng PEM:

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

Sau đó tải lên tệp pem này và điền vào biểu mẫu và gửi nó đến trang web này . Và sau đó, bạn sẽ nhận được email sau khi chúng tôi đăng ký khóa tải lên mới. Chỉ chấp nhận các yêu cầu đặt lại khóa từ chủ sở hữu tài khoản Play Console .

Tất cả tốt và tốt. Bạn có thể xuất bản apk bản phát hành mới bằng tệp jks mới của mình.


2
Điều này chỉ hoạt động nếu bạn đã bật tính năng Google Play App Signing .
Sumit

không. không cần đến Google Play App Signing. ít nhất tôi không kích hoạt nó.
ksgngrkn 26/02/18

Điều này có được ghi lại ở bất cứ đâu không?
Sumit

Điều này chỉ hoạt động cho các ứng dụng ký ứng dụng. Tôi chỉ xác nhận.
Euridice01

11

Nếu bạn biết mật khẩu kho khóa của mình, bạn vẫn không có khóa cá nhân được liên kết để ký ứng dụng của mình. Bạn cũng không có cơ hội để tạo cùng một khóa riêng tương ứng với khóa công khai của bạn.

Do đó: Luôn sao lưu tệp kho khóa của bạn. Nó quan trọng như mã nguồn của bạn.


1
Vì vậy, nếu tôi hiểu chính xác, khóa riêng tư này được tạo ngẫu nhiên trên mỗi kho khóa, phải không? Và điều duy nhất chúng ta biết là khóa công khai, đúng không?
iCantSeeSharp

Nếu bạn có quyền truy cập được ủy quyền vào kho khóa, bạn cũng có thể xuất khóa cá nhân và nhập khóa đó vào các kho khóa hoặc dịch vụ khác.
saxos

Có phải lý tưởng để lưu trữ tệp kho khóa và khóa cùng với kho lưu trữ của bạn không?
Neon Warge

3

Nếu bạn đã bật tính năng ký ứng dụng Google Play cho ứng dụng của mình, bạn không cần phải lo lắng.

Để kiểm tra xem bạn đã bật tính năng ký ứng dụng Google Play chưa, hãy chuyển đến Quản lý bản phát hành -> Ký ứng dụng trong Google Play Console của bạn.

Nếu tính năng này được bật, bạn có thể liên hệ với Bộ phận hỗ trợ của Google Play bằng cách điền vào biểu mẫu hỗ trợ hoặc nếu không, bạn cũng có thể chọn trò chuyện trực tiếp với nhân viên hỗ trợ tại đây: https://support.google.com/googleplay/android-developer/answer/7218994? hl = vi

Giải thích cho họ vấn đề của bạn và họ sẽ cho bạn biết các bước tiếp theo bao gồm tạo kho khóa RSA 2048 bit mới có hiệu lực 25 năm và xuất khóa sang định dạng PEM và gửi nó qua email cho họ.

Để xuất khóa sang định dạng PEM:

keytool -export -rfc -alias upload -file upload_certificate.pem -keystore keystore.jks

Đây phải là một câu trả lời đúng.
Caio Santos

2

Từ ngày lâu, tôi cũng tìm kiếm một giải pháp cho điều đó, nhưng không thành công cho đến bây giờ. Nếu bạn có phiên bản cuối cùng của apk ứng dụng của mình, thì bạn có thể truy xuất chứng chỉ từ đó bằng cách sử dụng lệnh cmd jarigner. Nhưng bạn cần một khóa riêng để cập nhật. Google Play đã không cung cấp bất kỳ thư giãn nào cho điều đó.


3
bạn có thêm thông tin về cách làm điều này?
Zabs

1

Tôi đã tạo apk đã ký bằng cách sử dụng android studio, vì vậy trong " key Store Path ", tôi chỉ cần nhập một số tên không có phần mở rộng và điền vào cửa sổ bật lên này và ký ứng dụng. nhập mô tả hình ảnh ở đây

lần tới để xuất bản ứng dụng, tôi không nhớ đường dẫn và tên nơi nó được tạo.

bằng cách nào đó tôi tìm thấy vị trí mặc định là "C: \ Program Files \ Java \ jdk1.8.0_45 \ jre \ bin": \ jre \ bin

và trong thư mục đó ngắn theo ngày, sau đó tôi đã thử với tệp gần đây và nó đã hoạt động với tôi.

Lưu ý: bạn nên nhớ mật khẩu Kho khóa và mật khẩu khóa.


0

Phải có một cách để giải quyết vấn đề này .. còn ổ cứng bị lỗi thì sao?

Tôi muốn nói thêm rằng hãy luôn giữ một bản sao lưu kho khóa trong bộ nhớ đám mây như Google Drive, Dropbox hoặc gửi qua email cho chính bạn.


Tất nhiên có nhiều cách để giải quyết vấn đề này, chỉ là google sẽ không làm điều đó. Windows Store (ngay cả khi không có ai sử dụng) cho phép bạn đăng nhập các ứng dụng từ Visual Studio (bạn chỉ cần đăng nhập bằng tài khoản cửa hàng của mình) và sau đó có thể dễ dàng tải lên cửa hàng. Google--; Microsoft ++;
Juan Carlos

0

Có, bạn có thể phát hành bản cập nhật cho ứng dụng hiện có bằng một khóa mới!

Google hiện cho phép bạn tải khóa mới lên ứng dụng hiện có bằng cách yêu cầu họ đặt lại khóa thông qua email / trò chuyện trực tiếp trong Bộ phận hỗ trợ của Google.

Quá trình này mất 1-2 ngày làm việc.

Tôi đã làm theo quy trình này và tải lên bản cập nhật cho cùng một ứng dụng với một khóa mới. Nhóm kỹ thuật của Cửa hàng Google Play đã giúp tôi đặt lại khóa trước đó.


0

Có thể bây giờ, Sau tháng 5 năm 2017, bạn có thể Cập nhật ứng dụng của mình nếu bạn mất mật khẩu kho khóa hoặc kho khóa. Bạn không thể khôi phục kho khóa bị mất của mình nhưng bạn có thể thay thế kho khóa trên playstore. Bấm vào đây

Quy trình ký ứng dụng:

Bạn có thể tải lên các APK được ký bằng khóa ký ứng dụng gốc trước hoặc sau khi bạn chọn tham gia ký ứng dụng bằng Google Play.

Nếu đang bắt đầu sử dụng Android App Bundles, bạn có thể kiểm tra chúng trong các phiên bản thử nghiệm trong khi sử dụng APK hiện có của mình trong quá trình sản xuất. Đây là cách quá trình hoạt động:

  1. Ký gói ứng dụng hoặc APK của bạn và tải nó lên Play Console.
  2. Tùy thuộc vào những gì bạn tải lên, đây là cách quy trình ký khác nhau:

    • Gói ứng dụng: Google tạo APK được tối ưu hóa từ gói ứng dụng của bạn và ký chúng bằng khóa ký ứng dụng.
    • APK được ký bằng khóa tải lên: Google xác minh và tách chữ ký của bạn khỏi APK, sau đó gán lại APK bằng khóa ký ứng dụng.
    • APK được ký bằng khóa ký ứng dụng: Google xác minh chữ ký. Google cung cấp các APK đã ký cho người dùng.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.