Tôi không thể tìm thấy keytool Android


265

Tôi đang cố gắng làm theo hướng dẫn lập bản đồ Android và đến phần này nơi tôi phải lấy khóa API .

Tôi đã tìm thấy debug.keystorenhưng dường như không có keytoolứng dụng nào trong thư mục:

C:\Documents and Settings\tward\\.android>ls
adb_usb.ini      avd       debug.keystore  repositories.cfg androidtool.cfg  ddms.cfg  default.keyset

Cũng không có keytooltrong thư mục này:

C:\Android\android-sdk-windows\tools>ls
AdbWinApi.dll     apkbuilder.bat       etc1tool.exe         mksdcard.exe
AdbWinUsbApi.dll  ddms.bat             fastboot.exe         source.properties
Jet               dmtracedump.exe      hierarchyviewer.bat  sqlite3.exe
NOTICE.txt        draw9patch.bat       hprof-conv.exe       traceview.bat
adb.exe           emulator.exe         layoutopt.bat        zipalign.exe
android.bat       emulator_NOTICE.txt  lib

Tôi đang sử dụng Eclipse làm trình soạn thảo của mình và tin rằng tôi đã tải xuống tất cả SDK mới nhất.

Tôi đang làm gì sai?


12
Tuyệt quá. Đăng câu hỏi thứ hai của tôi và tôi nhận được "Tumbleweed" cho huy hiệu đầu tiên của mình !!! Vui lòng chế giễu tôi một cách nhẹ nhàng :-)
Tim

thật tuyệt vời, bạn đã tìm được cách phát hành SHA1 trên windows chưa
Pankaj Nimgade

Câu trả lời:


441

keytoolđi kèm với SDK Java. Bạn nên tìm thấy nó trong thư mục có chứa javac, vv


153
Hiểu rồi: C: \ Tệp chương trình \ Java \ jdk1.6.0_14 \ bin Cảm ơn
Tim

5
thậm chí có thể tìm thấy nó trong JRE ... Cảm ơn
Nick.T

4
Một mẹo hữu ích là lưu đầu ra vào một tệp, để bạn có thể lấy khóa. Chỉ cần thêm phần này vào cuối:> somefilename.txt
Attaque

3
Trong C: \ Tệp chương trình \ Java \ jdk1.7.0_79 \ bin
Jean-François

18
Của tôi là trong C:\Program Files\Android\Android Studio\jre\bin(Sử dụng Studio, không phải Eclipse)
Tim Krins

99

Được rồi, vì vậy bài đăng này là từ sáu tháng trước, nhưng tôi nghĩ rằng tôi sẽ thêm một số thông tin ở đây cho những người bối rối về toàn bộ doanh nghiệp khóa API / MD5 vân tay. Tôi phải mất một thời gian để tìm ra, vì vậy tôi cho rằng những người khác cũng gặp rắc rối với nó (trừ khi tôi chỉ buồn tẻ như vậy).

Các hướng này dành cho Windows XP, nhưng tôi tưởng tượng nó tương tự với các phiên bản Windows khác. Có vẻ như người dùng Mac và Linux có thời gian dễ dàng hơn với điều này vì vậy tôi sẽ không giải quyết chúng.

Vì vậy, để sử dụng bản đồ xem trong ứng dụng Android của bạn, Google muốn đăng ký với họ để bạn có thể đăng xuất trên thỏa thuận Điều khoản dịch vụ API của Bản đồ Android. Tôi nghĩ rằng họ không muốn bạn tạo bất kỳ ứng dụng GPS từng chặng nào để cạnh tranh với ứng dụng của họ hoặc thứ gì đó. Tôi đã không thực sự đọc nó. Giáo sư.

Vì vậy, hãy truy cập http://code.google.com.vn/android/maps-api-signup.html và xem thử. Họ muốn bạn đánh dấu vào ô "Tôi đã đọc và đồng ý với các điều khoản và điều kiện" và nhập dấu vân tay MD5 của chứng chỉ. Wtf là vậy, bạn có thể nói. Tôi không biết, nhưng chỉ cần làm những gì tôi nói và ứng dụng Android của bạn không bị tổn thương.

Đi đến Bắt đầu> Chạy và nhập cmd để mở dấu nhắc lệnh. Bạn cần điều hướng đến thư mục với tệp keytool.exe, có thể ở một nơi hơi khác tùy thuộc vào phiên bản JDK mà bạn đã cài đặt. Của tôi là trong C:\Program Files\Java\jdk1.6.0_21\binnhưng hãy thử duyệt đến thư mục Java và xem bạn có phiên bản nào và thay đổi đường dẫn cho phù hợp.

Sau khi điều hướng đến C: \ Program Files \ Java \ <"phiên bản JDK của bạn tại đây"> \ bin trong dấu nhắc lệnh, nhập

keytool -list -keystore "C:/Documents and Settings/<"your user name here">/.android/debug.keystore"

với các trích dẫn. Tất nhiên <"tên người dùng của bạn ở đây"> sẽ là tên người dùng Windows của riêng bạn.

(Nếu bạn gặp khó khăn khi tìm đường dẫn này và bạn đang sử dụng Eclipse, bạn có thể kiểm tra Window> Preferences> Android> Build và kiểm tra "Kho khóa gỡ lỗi mặc định")

Nhấn enter và nó sẽ nhắc bạn nhập mật khẩu. Chỉ cần nhấn enter. Và voila, ở phía dưới là dấu vân tay MD5 của bạn. Nhập dấu vân tay của bạn vào hộp văn bản tại trang Đăng ký API của Bản đồ Android và nhấn Tạo khóa API.

Và có chìa khóa của bạn trong tất cả vinh quang của nó, với bố cục xml mẫu tiện dụng với khóa của bạn được nhập để bạn sao chép và dán.


Bạn đã cứu tôi một hoặc hai cơn đau đầu
zabawaba99

Không phải đó là dấu gạch chéo ngược, thay vì dấu gạch chéo về phía trước, trên Windows?
Ryan R

FYI, nếu bạn sử dụng jdk1.7, hãy thêm công cụ sửa đổi-v
Ryan R

Nhiều người nên giải thích như bạn!
K - Độc tính trong SO đang tăng lên.

@ trục trặc, có cách nào để có được SHA1 để phát hành bản dựng trên windows
Pankaj Nimgade

17

Ok tôi đã làm điều này trong hệ thống Windows 7 32 bit.

bước 1 : đi đến - C: \ Chương trình tập tin \ Java \ jdk1.6.0_26 \ bin - và chạy jarsigner.exe trước (nhấp đúp chuột)

step2 : xác định vị trí debug.keystore, trong trường hợp của tôi là - C: \ Users \ MyPcName \ .android

step3 : mở dấu nhắc lệnh và đi đến dir - C: \ Program Files \ Java \ jdk1.6.0_26 \ bin và đưa ra lệnh sau: keytool -list -keystore "C: \ Users \ MyPcName \ .android \ debug.keystore"

step4 : nó sẽ hỏi mật khẩu Keystore ngay bây giờ. (mà tôi đang tìm ra ...: -?)

cập nhật: OK trong trường hợp mật khẩu của tôi là ´ android ật. - (Tôi đang sử dụng Eclipse cho Android, vì vậy tôi đã tìm thấy nó ở đây) Thực hiện theo các bước trong nhật thực : Windows> ưu tiên> android> build> ..
(Xem trong trường mặc định của Debug Keystore .)



Lệnh thay đổi mật khẩu kho khóa (xem tại đây): Kho khóa thay đổi mật khẩu




10

Câu trả lời 4 bước ở trên đã có tác dụng với tôi, nhưng nó trả về khóa SH1 ... nhưng Google yêu cầu khóa MD5 để tạo khóa API của bạn.

Người ta chỉ cần thêm '-v' vào lệnh trong bước 3. giống như vậy:

Cập nhật câu trả lời 4 bước

Ok tôi đã làm điều này trong hệ thống Windows 7 32 bit.

bước 1 : đi đến - C: \ Chương trình tập tin \ Java \ jdk1.7.0 \ bin - và chạy jarsigner.exe trước (nhấp đúp chuột)

step2 : xác định vị trí debug.keystore (trong Eclipse: Windows / Preferences / Android / build ..), trong trường hợp của tôi là - C: \ Users \ MyPcName.android

step3 : mở dấu nhắc lệnh và đi đến dir - C: \ Program Files \ Java \ jdk1.7.0 \ bin và đưa ra lệnh sau: keytool -v -list -keystore "C: \ Users \ MyPcName.android \ debug.keystore"

step4 : nó sẽ hỏi mật khẩu Keystore ngay bây giờ. Mặc định là 'android'


6

Tôi chưa bao giờ cài đặt Java, nhưng khi bạn cài đặt Android Studio, nó có phiên bản riêng trong thư mục Android. Đây là nơi tôi đang nằm. Con đường của bạn có thể tương tự. Sau đó, bạn có thể đặt keytool vào đường dẫn của mình hoặc chỉ chạy nó từ thư mục đó.

C:\Program Files\Android\Android Studio\jre\bin

2

Điều này dường như khó tìm hơn nhiều so với OSX. Quá nhiều bài viết mâu thuẫn

Đối với MAC OSX Mavericks Java JDK 7, hãy làm theo các bước sau để xác định vị trí keytool :

Trước hết hãy chắc chắn để cài đặt Java JDK :

http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html

Sau đó nhập lệnh này vào dấu nhắc lệnh:

/usr/libexec/java_home -v 1.7

nó sẽ phun ra một cái gì đó như:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home

keytoolnằm trong cùng thư mục với javac. I E:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin

Từ binthư mục bạn có thể sử dụng keytool.


2

Nếu bạn đang sử dụng Android Studio cho Windows để tạo kho khóa phát hành và đã ký .apk, chỉ cần làm theo các bước sau:

1) Xây dựng> Tạo APK đã ký

2) Chọn "Tạo mới ...", chọn đường dẫn đến kho khóa và nhập tất cả dữ liệu cần thiết

3) Sau khi kho khóa của bạn (your_keystore_name.jks) được tạo, bạn sẽ sử dụng nó để tạo apk đã ký đầu tiên tại điểm đến bạn chọn

Tôi chưa thấy cần phải sử dụng công cụ lệnh nếu bạn có IDE như Android Studio.


có lẽ để sử dụng để khám phá dấu vân tay SHA1?
Iyas

0

Trong thực tế, xuất khẩu nhật thực sẽ gọi

java -jar android-sdk-windows\tools\lib\sdklib.jar com.android.sdklib.build.ApkBuilderMain

và sau đó gọi com.android.sdklib.iternal.build.SignJarBuilder.


0

Một điều không được đề cập ở đây (nhưng giữ cho tôi không chạy keytool hoàn toàn) là bạn cần chạy Command Prompt với tư cách Quản trị viên.

Chỉ muốn chia sẻ nó ...


Đây có lẽ nên là một bình luận và không phải là một câu trả lời.
Ian R. O'Brien

1
Tôi đồng ý nên là một bình luận, mặc dù điều đó thật xui xẻo, bạn không có đủ đại diện để bình luận!
Joel Balmer

0

Không cần sử dụng dòng lệnh.

Nếu bạn FILE-> "Xuất ứng dụng Android" trong ADK thì nó sẽ cho phép bạn tạo một khóa và sau đó tạo tệp .apk của bạn.

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.