दिलचस्प पोस्ट
उद्देश्य सी आवृत्ति चर फ्रिज कॉल में स्विफ्ट में पैरामीटर नाम की आवश्यकता क्यों है? क्या जावा में गतिशील रूप से क्लासपाथ को "जोड़ना" संभव है? यूनिडायरेक्शनल और द्विदिश संघों में क्या अंतर है? एक गैर-प्रशासक उपयोगकर्ता खाते से एक Windows सेवा को प्रारंभ / बंद करें डेटमैट ऑब्जेक्ट को केवल स्ट्रिंग की तारीख को केवल पायथन में कनवर्ट करें पायथन + ldap का उपयोग कर सक्रिय निर्देशिका के विरुद्ध प्रमाणीकरण डापर में बहुआयामी का सही इस्तेमाल जावास्क्रिप्ट का उपयोग करके मेरे ब्राउज़र संस्करण और ऑपरेटिंग सिस्टम का पता कैसे लगाया जा सकता है? Google Android के साथ JAXB का उपयोग करना युग का समय "वास्तविक" दिनांक / समय में परिवर्तित करना <P: संवाद> के गाया और दृश्यमान विशेषताओं के बीच का अंतर स्विफ्ट में यूनिकोड कोड बिन्दुओं के साथ कार्य करना रूबी क्लास इंस्टेंस वेरिएबल बनाम क्लास चर रन-टाइम में अनुदान अनुमतियों की जांच कैसे करें?

फेसबुक एंड्रॉइड एसडीके के लिए की हैश

मैं समझ नहीं सकता कि कुंजी हैश को फेसबुक एंड्रॉइड एसडीके का उपयोग करने के लिए कैसे आवश्यक है। मुझे पता चला कि मैं इन आदेशों के साथ keytool उपयोग कर सकता हूं:

  keytool -exportcert -alias [alias] -keystore [keystore] | openssl sha1 -binary | openssl enc -a -e 

केवल समस्या यह है कि मुझे यह पता नहीं है कि इसे डालने के लिए, मैंने कमान खिड़कियों (विन्ड 7) के माध्यम से कोशिश की और मैंने फाइल को खोलने की कोशिश की।

Solutions Collecting From Web of "फेसबुक एंड्रॉइड एसडीके के लिए की हैश"

  1. http://slproweb.com/products/Win32OpenSSL.html विंडोज़ 32 या 64 बिट के आधार पर ओपनएसएसएल को डाउनलोड और इंस्टॉल करें। (ध्यान दें: उस साइट से पहले विज़ुअल सी ++ 208 फिर से वितरित और इंस्टॉल करें)
  2. Windows पथ में स्थापित OpenSSL की बिन निर्देशिका को रखें।
  3. कमांड प्रॉम्प्ट खोलें और C: \ Users {User_Name} पर जाएं। एंड्रॉइड
  4. अब इस कमांड को सीएमडी पर रखें " keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64 "। (देखें https://developers.facebook.com/docs/android/getting-started#samples )
  5. अब दोहरे उद्धरण के बिना पासवर्ड "फेसबुक" दर्ज करें
  6. अब एक हैश कुंजी उत्पन्न हो जाएगी यहां छवि विवरण दर्ज करें
  7. आखिरकार फेसबुक डेवलपर साइट पर जाएं। सुनिश्चित करें कि आप फेसबुक में लॉग इन हैं और ऊपर-दाएं ड्रॉपडाउन मेनू का उपयोग करके अपने 'डेवलपर सेटिंग' पर जाएं:
  8. एक बार जब आप अपने डेवलपर सेटिंग में हों, तो बाएं पर नेविगेशन से 'नमूना ऐप' चुनें और अपनी कुंजी हैश जोड़ें और उसे अपने प्रोफ़ाइल में सहेजें: यहां छवि विवरण दर्ज करें

आप यहां से ओपन एसएसएल स्थापित कर सकते हैं , जिससे आपको अपना कमांड काम करना चाहिए

मैंने एक बैच स्क्रिप्ट facebookkeydebug.bat बनाया, जो कि वांछित फेसबुक की हैश वापस लौटाता है। बस स्क्रिप्ट को संपादित करें, सही पथ सेट करें, कुंजीस्टोर नाम दें और इसे चलाएं।

 :: Getting Android key hash for Facebook app on Windows :: Requirement: OpenSSL for Windows (http://code.google.com/p/openssl-for-windows/downloads/list) :: Usage: set paths and run facebookkeydebug.bat @echo Exporting keystore cert keytool -exportcert -alias androiddebugkey -keystore C:\Users\myusername\.android\debug.keystore -storepass android -keypass android > debug.keystore.bin @echo Converting to sha1 C:\PROGRAMS\openssl-0.9.8k_X64\bin\openssl sha1 -binary debug.keystore.bin > debug.keystore.sha1 @echo Converting to base64 C:\PROGRAMS\openssl-0.9.8k_X64\bin\openssl base64 -in debug.keystore.sha1 -out debug.keystore.base64 @echo Done, Android hash key for Facebook app is: C:\PROGRAMS\openssl-0.9.8k_X64\bin\openssl base64 -in debug.keystore.sha1 @pause 

संपादित करें: मैंने कुछ बैच लिपियों को विंडोज़ पर हस्ताक्षर करने और प्रमाणपत्र कुंजी प्राप्त करने के लिए प्रकाशित किया है: https://github.com/petrnohejl/Android-Scripts

आप हैश कुंजी प्राप्त करने के लिए नीचे कोड का उपयोग कर सकते हैं:

 try { PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES); for (Signature signature : info.signatures) { MessageDigest md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); } } catch (NameNotFoundException e) { Log.e("name not found", e.toString()); } catch (NoSuchAlgorithmException e) { Log.e("no such an algorithm", e.toString()); } 

संदर्भ:

http://limbaniandroid.blogspot.com/2013/04/how-to-get-hash-key-for-integarte.html

चीजों को आसान बनाने के लिए –

 keytool.exe -list -alias androiddebugkey -keystore debug.keystore -v 

यह आपको खोलने के लिए परेशानी के बिना आवश्यक उंगलियों के निशान के साथ प्रदान करना चाहिए

जैसे

 Certificate fingerprints: MD5: 1A:5E:AA:CB:1A:CF:68:F0:8B:DA:D8:BC:EE:4F:BF:EE SHA1: D2:89:D1:5A:BC:F8:E3:E5:62:4D:DD:20:DD:96:CD:AB:51:A1:C1:7F Signature algorithm name: SHA1withRSA Version: 3 

यह कैसे कीस्टोर से कुंजी हैश प्राप्त करने का एक उदाहरण है:

पहले हमें पथों को प्राप्त करने की जरूरत है:

जावा पथ: सी: \ प्रोग्राम फ़ाइलें \ जावा \ jdk1.6.0_35 \ जेआर \ बिन

SSL पथ खोलें: C: \ OpenSSL-Win32 \ bin

(से स्थापित करें: http://www.openssl.org/ )

कीस्टोर पथ: सी: \ डेटा \ एंड्रॉइड \ कुंजीस्टोर \

2) फिर कमांड लाइन और प्रकार पर जाएं:

सीडी [जावा पथ]

3) फिर टाइप करें:

keytool.exe -exportcert -alias [उपनाम नाम] -कीस्टोर [कीस्टॉर पथ] \ डीबग.कीस्टोर | [ओपन एसएसएल पथ] \ openssl sha1 -binary | [ओपन SSL पथ] \ बिन \ openssl base64

4) आपके कुंजीस्टोर का पासवर्ड आवश्यक होना चाहिए और फिर आपके पास आपके एंड्रॉइड कीस्टोर से संबंधित Hash Key

यहां छवि विवरण दर्ज करें

यह Facebook लिए Key Hash को सेट करने का तरीका है:

https://developers.facebook.com/docs/android/getting-started#release-key-hash

आपको कमांड प्रॉम्प्ट विंडो खोलना होगा शुरू-> चलाएं और टाइप करें 'cmd' पर जाएं और एंटर दबाएं। तब आपको उस फ़ोल्डर में नेविगेट करना होगा जहां keytool है (जब तक कि यह आपके पथ में न हो), और फिर उस कमांड को टाइप करें

ऐसा लगता है कि यह कमांड विंडोज़ के लिए है और लिनक्स नहीं है।

कोड का उपयोग करके कुंजी-हैश उत्पन्न करने का सर्वोत्तम तरीका है:

  public static void generateKeyHash(Context context) { try { PackageInfo info = context.getPackageManager().getPackageInfo( "com.example.user2.testapp", PackageManager.GET_SIGNATURES); for (Signature signature : info.signatures) { MessageDigest md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); } } catch (PackageManager.NameNotFoundException e) { } catch (NoSuchAlgorithmException e) { } } 

इस विधि को एक बार कॉल करें और कुंजी-हैश उत्पन्न करें, आनंद लें

सी: \ प्रोग्राम फ़ाइलें \ जावा \ jdk1.6.0_22 \ बिन \ keytool.exe -exportcert -alias "प्रकार Youraliasname" -keystore स्थान आपके keystore के | सी: \ OpenSSL-Win32 \ bin \ openssl sha1 -binary | C: \ OpenSSL- Win32 \ bin \ openssl base64