Soru & Cevap

Facebook release keyhash ...

17.03.2016 - 12:44

Öncelikle şunu belirmeliyim ki arkadaşlar bu bir soru değildir. Yalnızca insanlara katkım olsun diye buraya yazıyorum. Çünkü benim gibi bu sorunun cevabını arayıpta bulamayan eminim çok kişi vardır. Bunu bulana kadar neler çektim bilemezsiniz. Herneyse hızlıca konuya geçeyim.

Örneğin;

Android Studio aracılığıyla bir uygulama geliştirdiniz ve bu uygulamanın da bir facebook entegrasyonu var, giriş-çıkışları sağlıyorsunuz falan filan. Bunun için de facebook developer console dan da ilgili uygulamanın bağlantılarını yapıp istenilen key hash kısmına android studio üzerinde debug key oluşturup oluşan KeyHash'i yazdınız ve yapmış olduğunuz uygulamayı kendi cihazınızda facebook entegrasyonunu denediniz ve çalıştı. Buraya kadar herşey normal gidiyor, bir sıkıntı yok diyorsunuz ve uygulamanın gayet güzel çalıştığından emin olup uygulamayı signed apk yapıp (imzalayıp) Google Play Store'a atıp cihazlara yüklediğinizde, bir de ne göresiniz; facebook key hash hatası!! Tekrar key hash'i kontrol ettiniz kod doğru ama uygulama Google Play Store'dan inince çalışmıyor.

Bunun sebebi şu;

Orada kullanmakta olduğunuz key hash debug apk yani imzalanmamış ve ayrıştırılabilir uygulama için kullanılan key hash.

Google Play Store üzerine yüklediğiniz apk ise release - signed yani imzalanmış apk türü içermektedir.

Bu iki tür içerisinde oluşturulan SHA1 anahtarları birbirinden tamamen farlıdır ve uygulamayı açtığınızda facebook ilgili key hash'i bulamadığında hatayı alırsınız.

Bunun çözümü ise şöyledir;

1. İlk olarak eyer sisteminizde yoksa java jdk dosyasını indirerek başlayın.

İşletim sisteminizin türüne göre 32 veya 64 bit olarak uygun olanlarını indirin.

Java indirme linki : http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

İndirdiğiniz javayı bilgisayarınıza kurun.

2. Cmd yani komut istemini yönetici olarak açın.

Kurulumunu yaptığınız java'nın bin adlı dizinine ulaşın.

Örneğin; C:\Program Files\Java\jre1.8.0_74\bin

Dikkat; C:\Program Files\Java\ klasörü içerisindeki jre ile başlayan dizine girmelisiniz.

3. bin adlı dizinin yolunu kopyalayın ve komut istemine örneğin şu şekilde yazın ve Enter'a basın; cd C:\Program Files\Java\jre1.8.0_74\bin

4.Google Play Store üzerine yüklediğiniz imzalanmış apk dosyasını da C:\ gibi bir ana dizine kopyalayın.

Örneğin; C:\app-release.apk

5. Komut istemine şu örnekteki gibi yazın ve Enter'a basın; keytool -list -printcert -jarfile C:\app-release.apk

6. Karşınıza imzalanmış uygulamanın bir takım bilgileri çıkıyor ve bu bilgiler arasında SHA1'e karşılık gelen dizeyi kopyalayın.

Örneğin ; SHA1: B9:EB:CA:E4:F7:F0:9A:4F:AC:9F:44:12:D9:35:CA:AD:6C:0A:AB:80 kopyalayacağınız kısım sadece şurası; B9:EB:CA:E4:F7:F0:9A:4F:AC:9F:44:12:D9:35:CA:AD:6C:0A:AB:80

7. Kopyaladığınız bu SHA1 anahtarını şu adreste bulunan forumdaki Hex string adlı alana bu anahtarı yapıştırın ve sayfanın altındaki Convert adlı butona tıklayın. Karşınıza iletişim kutusu üzerinde bir bildim gelebilir tamam deyin.

Ve sonunda sayfanın altındaki Output (base64): adlı alanın içerisinde bulunan release key hash'i facebook developer console üzerindeki ilgili yere kopyalayıp kaydetmeniz dahilinde uygulamanız gerektiği gibi çalışacaktır.

 

Umarım bir teşşekürü çok görmezsiniz.

İyi günler, iyi çalışmalar.

187 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-1898-1603652276.png
seferdemir
09.10.2017 - 03:17

Kardeşim çok teşekkürler bu bilgi için. Facebook hash keys her apk build ettiğimde değişiyordu.