Saya tidak mengerti proses ini sama sekali. Saya telah dapat menavigasi ke folder yang berisi keytool di Java SDK. Meskipun saya terus mendapatkan kesalahan, openssl tidak dikenali sebagai perintah internal atau eksternal. Masalahnya adalah bahkan jika saya bisa membuatnya bekerja, apa yang akan saya lakukan dan dengan apa setelahnya?
182
Jawaban:
Inilah yang perlu Anda lakukan -
Unduh openSSl dari Code Extract it. buat folder- OpenSSL di C: / dan salin kode yang diekstrak di sini.
mendeteksi jalur file debug.keystore. Jika Anda tidak menemukan, maka lakukan pencarian di C: / dan gunakan Path pada perintah di langkah berikutnya.
mendeteksi jalur keytool.exe Anda dan pergi ke dir / in command prompt dan jalankan perintah ini dalam 1 baris-
itu akan meminta kata sandi, taruh android itu saja. kamu akan mendapatkan kunci-hash
sumber
android
.Untuk Linux dan Mac
Terminal Terbuka:
Untuk Pembuatan Debug
Anda akan menemukan debug.keystore di folder ".android". Salin dan tempel ke desktop dan jalankan perintah di atas.
Untuk rilis Build
CATATAN: Pastikan bahwa dalam kedua kasus itu meminta kata sandi. Jika tidak meminta kata sandi, itu berarti ada sesuatu yang salah dalam perintah. Kata sandi untuk debug.keystore adalah " android " dan untuk rilis Anda harus memasukkan kata sandi yang Anda atur saat membuat keystore .
sumber
keytool -exportcert -alias <aliasName> -keystore <keystoreFilePath>
sendiri pada awalnya, untuk melihat apakah semuanya baik-baik saja. Ditambah lagi, ketika dipipihkan, keytool berada dalam mode non-interaktif dan menunjukkan kata sandi dalam teks biasa ketika Anda memasukkannya. Jadi sebaiknya Anda menulis skrip kecil yang menjalankan perintah secara terpisah.Silakan coba ini:
sumber
OpenSSL: Anda harus menginstalnya jika tidak diinstal sebelumnya dengan sistem operasi Anda (mis. Windows tidak memilikinya diinstal sebelumnya) . Cara memasang itu tergantung pada OS Anda (untuk Windows periksa tautan yang disediakan oleh coder_For_Life22).
Cara termudah tanpa mengotak-atik adalah menyalin binary openssl.exe ke path keytool Anda jika Anda menggunakan Windows. Jika Anda tidak ingin melakukan itu, Anda harus menambahkannya ke
PATH
variabel lingkungan Anda . Kemudian jalankan perintah yang disediakan dalam dokumen.Perhatikan bahwa argumen setelah
-keystore
menunjuk ke debug keystore Anda. Lokasi ini juga tergantung pada sistem operasi Anda. Harus di salah satu lokasi berikut:Jika Anda melakukan segalanya dengan benar, Anda harus dimintai kata sandi. Itu adalah
android
untuk sertifikat debug. Jika kata sandi benar, konsol akan mencetak hash (karakter dan angka yang agak acak).Ambil itu dan salin ke
android key hash
bidang di dalam preferensi aplikasi Anda di facebook. Untuk menuju ke sana, pergi ke developers.facebook.com/apps , pilih aplikasi Anda, pergi keEdit settings
dan gulir ke bawah. Setelah itu, tunggu beberapa menit hingga perubahan mulai berlaku.sumber
untuk menghasilkan hash kunci Anda di komputer lokal Anda, jalankan utilitas keytool Java (yang seharusnya ada di jalur konsol Anda) terhadap keystore debug Android. Ini, secara default, di direktori home andand Anda). Pada OS X, jalankan:
Di Windows, gunakan: -
Semoga ini bisa membantu Anda
Situs facebook pengembang ref
sumber
Anda cukup menggunakan satu baris javascript di konsol browser untuk mengonversi kunci peta hex menjadi base64. Buka konsol di browser terbaru (F12 di windows) dan rekatkan kode dan ganti
SHA-1
,SHA-256
peta hex yang disediakan Google play di bawahRelease Managment
>App signing
:sumber
Berikut ini rincian lengkap (Untuk Windows)
1. Unduh OpenSSl baik ke-3 atau ke-4 (dengan e akan bekerja lebih baik) berdasarkan sistem Anda 32bit atau 64bit.
2. Ekstrak zip yang diunduh di dalam direktori C.
3. Buka folder yang diekstraksi hingga ke bin dan salin path, itu harus seperti
C:\openssl-0.9.8k_X64\bin\openssl
(tambahkan \ openssl di akhir)4. (Dapatkan path ke folder bin Jdk, jika Anda tahu caranya, abaikan ini).
Buka android studio ~ file ~ Struktur Proyek (ctrl + alt + shift + s), pilih lokasi SDK di panel sebelah kiri, salin lokasi JDK dan tambahkan / bin ke sana
Jadi Lokasi JDK akhir akan seperti
C:\Program Files\Android\Android Studio\jre\bin
kami mengikuti metode ini untuk mendapatkan lokasi Jdk karena Anda mungkin menggunakan jdk tertanam seperti saya
sekarang Anda memiliki lokasi OpenSSl & lokasi JDK
5. sekarang kita perlu men-debug lokasi keystore, untuk itu buka C ~> Users ~> YourUserName ~> .android harus ada nama file debug.keystore, sekarang salin lokasi path, seharusnya ada beberapa hal seperti
C:\Users\Redman\.android\debug.keystore
6. sekarang buka command prompt dan ketik perintah
dalam kasus saya
7. sekarang buat perintah berikut
dalam kasus saya perintah akan terlihat seperti
sekarang masukkan perintah ini di command prompt, jika Anda pernah melakukan hal yang benar, Anda akan diminta kata sandi (kata sandi adalah android)
itu saja, Anda akan diberi Key Hash, cukup salin dan gunakan
Untuk KeyHash yang Ditandatangani, buat perintah berikut
masukkan kata sandi keystore Anda, Jika Anda memasukkan kata sandi yang salah itu akan memberikan KeyHash yang salah
CATATAN
Jika karena alasan tertentu jika memberikan kesalahan pada beberapa lintasan maka bungkus lintasan itu dengan tanda kutip ganda. Juga shell daya Windows tidak berfungsi dengan baik untuk saya, saya menggunakan git bash (atau menggunakan command prompt).
contoh
sumber
Ada solusi singkat juga. Jalankan saja ini di aplikasi Anda:
Yang lebih panjang yang tidak membutuhkan FB SDK (berdasarkan solusi di sini ):
Hasilnya harus diakhiri dengan "=".
sumber
-AAAAAAAA_AAAAAA-AAAAAAAAAA
tidak diizinkan oleh Facebook, printHashKey mengembalikan kunci dalam format yang valid+AAAAAAAA/AAAAAA+AAAAAAAAAA=
Untuk Windows:
Masukkan kata sandi: android -> Tekan Enter
Salin Kunci Hash yang Dihasilkan -> Masuk Facebook dengan akun pengembang Anda
Buka Aplikasi Facebook Anda -> Pengaturan -> Tempel kunci hash di opsi "hash kunci" -> simpan perubahan.
Sekarang Uji aplikasi android Anda dengan Masuk Facebook / Bagikan dll.
sumber
Sejak API 26, Anda dapat membuat HASH KEYS Anda menggunakan kode berikut di KOTLIN tanpa perlu Facebook SDK.
sumber
class MainActivity: FlutterActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) GeneratedPluginRegistrant.registerWith(this) } }
Begitulah cara saya mendapatkan:
Jadi ketika Anda mencoba masuk tanpa kunci, pengecualian akan terjadi. Facebook memasukkan kunci KANAN ke dalam pengecualian ini. Yang perlu Anda lakukan hanyalah menyalinnya.
sumber
Jika Anda telah mengunggah aplikasi ke Play store, Anda dapat menghasilkan Hash Key sebagai berikut:
1) Buka Manajemen Rilis di sini
2) Pilih Manajemen Rilis -> Penandatanganan Aplikasi
3) Anda dapat melihat kunci SHA1 dalam format hex, sertifikat penandatanganan aplikasi.
4) Salin SHA1 dalam format hex dan mengubahnya menjadi format base64, Anda dapat menggunakan tautan ini melakukannya tanpa SHA1: bagian dari hex.
5) Buka konsol pengembang Facebook dan tambahkan kunci (setelah dikonversi ke basis 64) di pengaturan -> dasar -> hash kunci.
sumber
Untuk tautan tutorial vedio yang mudah untuk menghasilkan KeyHash di sini
Unduh openssl dari SINI
sumber
Unduh open ssl :
Kemudian tambahkan openssl \ bin ke variabel sistem path:
Komputer saya -> properti -> Konfigurasi lanjutan -> Lanjutan -> Variabel sistem -> di bawah variabel sistem temukan jalur, dan tambahkan ini ke ujungnya:; yourFullOpenSSLDir \ bin
Sekarang buka baris perintah pada folder jdk \ bin Anda C: \ Program Files \ Java \ jdk1.8.0_40 \ bin (pada windows tahan shift dan klik kanan -> buka command line di sini) dan gunakan:
Dan salin nomor 28 panjang yang dihasilkan setelah memberikan kata sandi.
sumber
Jalankan ini di aplikasi Anda:
Atau ini:
Dan kemudian lihat log.
Hasilnya harus diakhiri dengan "=".
Solusi didasarkan di sini dan di sini .
sumber
CARA MUDAH -> Jangan instal openssl -> GUNAKAN GIT BASH!
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Kata sandi default adalah "android"
Sebagian besar dari kita memasang Git Bash jadi ini adalah cara favorit saya.
sumber
ini akan membantu lebah baru juga.
hanya menambahkan lebih detail ke jawaban @ coder_For_Life22.
jika jawaban ini membantu Anda jangan lupa untuk memperbaiki. itu memotivasi kita.
untuk ini, Anda harus sudah mengetahui jalur file keystore dan kata sandi aplikasi
untuk contoh ini mempertimbangkan kunci disimpan di "c: \ keystorekey \ new.jks"
1. buka halaman ini https://code.google.com/archive / p / openssl-untuk-windows / unduhan
2. unduh file zip 32 atau 64 bit sesuai OS Windows Anda.
3. ekstrak file yang diunduh di mana saja Anda inginkan dan ingat jalannya.
4. untuk contoh ini kami menganggap Anda telah mengekstrak folder di folder unduhan.
jadi alamat file akan menjadi "C: \ Users \ 0 \ Downloads \ openssl-0.9.8e_X64 \ bin \ openssl.exe";
5. sekarang pada keyboard tekan tombol windows + r.
6. ini akan membuka kotak jalankan.
7. ketik cmd dan tekan Ctrl + Shift + Enter .
8. ini akan membuka command prompt sebagai administrator.
9. di sini arahkan ke folder bin java:
jika Anda menggunakan jre yang disediakan oleh Android Studio Anda akan menemukan path sebagai berikut:
a. buka studio android.
b. file-> struktur proyek
c. di panel kiri, klik 'Lokasi SDK'
d. di panel kanan, di bawah 'Lokasi JDK' adalah jalur jre Anda.
e. tambahkan "\ bin" di akhir jalur ini karena file "keytool.exe", yang kita butuhkan, ada di dalam folder ini. "C: \ Program Files \ Java \ jre-10.0.2 \ bin"
untuk contoh ini saya pertimbangkan,
"C: \ Program Files (x86) \ Java \ jre-10.0.2 \ bin"
10. sekarang dengan path di atas jalankan perintah sebagai berikut:
!!!!!! ini akan memberi Anda kuncinya
kesalahan: jika Anda mendapatkan:
---
'keytool' tidak dikenali sebagai perintah internal atau eksternal
---
ini berarti java diinstal di tempat lain.
sumber
langkah 1-> C: \ Program Files \ Java \ jdk1.6.0_43 \ bin>
Langkah 2-> keytool -list -v -keystore C: \ Users \ leon \ .android \ debug.keystore -alias androiddebugkey -storepass android -keypass android
Anda mendapat nilai SHA1 klik tautan ini Anda mengkonversi nilai SHA1 Anda ke HASH KEY
im 100% yakin tautan ini akan membantu Anda
sumber
Jalan mudah
Dengan menggunakan situs web ini Anda bisa mendapatkan Hash Key dengan Mengkonversi kunci SHA1 ke Hash Key untuk Facebook.
sumber
Anda dapat memperoleh semua sidik jari dari https://console.developers.google.com/projectselector/apis/credentials
Dan gunakan kode Kotlin ini untuk mengonversinya menjadi keyhash:
sumber
https://developers.facebook.com/docs/android/getting-started/
4.19.0 - 25 Januari 2017
Facebook SDK
Diubah
Facebook SDK sekarang secara otomatis diinisialisasi ketika aplikasi dimulai. Dalam sebagian besar kasus, panggilan manual ke FacebookSDK.sdkInitialize () tidak lagi diperlukan. Lihat panduan peningkatan untuk detail lebih lanjut.
Untuk Debug
sumber
Jalankan saja kode ini di OnCreateView Atau OnStart Actvity Anda dan Fungsi Ini Mengembalikan Anda Pengembangan Key Hash .
sumber
Saya mengalami masalah yang sama persis, saya tidak diminta untuk memasukkan kata sandi, dan sepertinya saya memiliki jalur yang salah untuk file keystore.
Bahkan, jika keytool tidak menemukan keystore yang telah Anda atur, itu akan membuat dan memberikan Anda kunci yang salah karena tidak menggunakan yang benar.
Aturan umum adalah bahwa jika Anda tidak diminta kata sandi maka Anda memiliki kunci yang salah yang dihasilkan.
sumber
Anda dapat menggunakan apk ini
sumber
Coba jawaban ini
https://stackoverflow.com/a/54513168/9236994
dengan upaya minimal membantu menyelesaikan masalah.
sumber
keytool -exportcert -alias androiddebugkey -keystore "C: \ Users ** Deepak **. android \ debug.keystore" | " C: \ Users \ Deepak \ ssl \ bin \ openssl" sha1 -binary | " C: \ Users \ Deepak \ ssl \ bin \ openssl" base64
2 Perubahan pada perintah di atas ini 1.Deepak === Ganti dengan Sistem Anda USERNAME 2.C: \ Users \ Deepak \ ssl === ganti jalur SSL Terbuka Anda
jalankan perintah ini dan dapatkan output seperti ini
C: \ Users \ Deepak> keytool -exportcert -alias androiddebugkey -keystore "C: \ Users \ D eepak.android \ debug.keystore" | "C: \ Users \ Deepak \ ssl \ bin \ openssl" sha1 -binary | "C: \ Users \ Deepak \ ssl \ bin \ openssl" base64 Masukkan kata sandi keystore: ****** ga0RGNY ****************** =
sumber
jika seseorang memiliki masalah dengan openssl, ikuti instruksi ini:
Itu dia
https://sourceforge.net/projects/openssl/files/latest/download
sumber