나중에 Facebook과 통합 될 앱의 응용 프로그램 서명을 생성하고 싶습니다. Facebook 자습서 중 하나에서 다음 명령을 찾았습니다.
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
튜토리얼에서는이 cmd를 실행하면 서명 생성 프로세스가 시작됩니다.
그러나이 명령은 오류를 제공합니다.
openssl is not recognized as an internal or external command
이걸 어떻게 제거 할 수 있습니까?
답변
openssl 대신 … 실제로 다운로드 한 openssl 폴더의 경로를 지정해야합니다. 실제 명령은 다음과 같아야합니다.
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | "C:\Users\abc\openssl\bin\openssl.exe" sha1 -binary | "C:\Users\abc\openssl\bin\openssl.exe" base64
입력 할 경로는 openssl을 설치 한 경로 일 것입니다. 도움이 되길 바랍니다 .. 🙂
편집하다:
아래의 각 링크에서 windows 32 및 64 비트 용 openssl을 다운로드 할 수 있습니다.
답변
다음과 같이 전체 경로를 사용하십시오.
exportcert -alias androiddebugkey -keystore ~/.android
/debug.keystore | "C:\openssl\bin\openssl.exe" sha1 -binary | "C:\openssl\bin\op
enssl.exe" base64
그것은 나를 위해 일했다.
답변
다음 단계를 따르십시오. 키가 올바르게 작동하기를 바랍니다.
-
1 단계 OpenSSL이 필요합니다. Google 코드의 openssl-for-windows 프로젝트에서 바이너리를 다운로드 할 수 있습니다 .
-
2 단계 폴더의 압축을 풀고 폴더의 경로를
bin
클립 보드에 복사합니다.예를 들어, 파일이 위치에 압축이 풀린
C:\Users\gaurav\openssl-0.9.8k_WIN32
경우 경로를 복사하십시오C:\Users\gaurav\openssl-0.9.8k_WIN32\bin
. -
3 단계 시스템 환경 경로에 경로를 추가합니다.
PATH
환경 변수가 설정된 후 cmd를 열고 다음 명령을 입력하십시오.C:\>keytool -exportcert -alias androiddebugkey -keystore [path to debug.keystore] | openssl sha1 -binary | openssl base64
프롬프트가 표시되면 비밀번호를 입력하십시오. 명령이 작동하면 키가 표시됩니다.
답변
이것은 나를 위해 성공적으로 작동했습니다.
“C : \ Program Files \ Java \ jdk1.6.0_26 \ bin \ keytool.exe”-exportcert -alias sociallisting -keystore “D : \ keystore \ SocialListing”| “C : \ cygwin \ bin \ openssl.exe”sha1 -binary | “C : \ cygwin \ bin \ openssl.exe”base64
아래 경로에주의하십시오 :
- “C : \ Program Files \ Java \ jdk1.6.0_26 \ bin \ keytool.exe”
- “D : \ keystore \ SocialListing” 또는 ” C : \ Users \ Shaon.android \ debug.keystore ” 와 같을 수 있습니다 .
- “C : \ cygwin \ bin \ openssl.exe” 또는 다음과 같을 수 있습니다 : C : \ Users \ openssl \ bin \ openssl.exe
명령이 성공적으로 작동하면 다음 명령이 표시됩니다.
키 저장소 비밀번호 입력 : typeyourpassword
암호화 된 해시 키 **
답변
답변이 늦었지만 나와 같은 사람들을 게으르게하는 데 도움이 될 것입니다.이 코드를 응용 프로그램 클래스에 추가하고 openssl을 다운로드 할 필요가 없으며 경로를 설정할 필요가 없습니다.이 코드 만 복사하면됩니다. 로그에 생성됩니다.
import com.facebook.FacebookSdk;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(getApplicationContext());
AppEventsLogger.activateApp(this);
printKeyHash();
}
private void printKeyHash() {
try {
PackageInfo info = getPackageManager().getPackageInfo(
getPackageName(), PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.i("KeyHash:",
Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (PackageManager.NameNotFoundException e) {
Log.e("jk", "Exception(NameNotFoundException) : " + e);
} catch (NoSuchAlgorithmException e) {
Log.e("mkm", "Exception(NoSuchAlgorithmException) : " + e);
}
}
}
매니페스트에 MyApplication 클래스를 추가하는 것을 잊지 마십시오.
<application
android:name=".MyApplication"
</application>
답변
먼저 cmd cd c : \ Program Files (x86) \ Java \ jre7 \ bin에서 Java / jre / bin 폴더로 이동하십시오.
그런 다음 : [시스템의 올바른 위치로 debug.keystore 경로 변경] openssl 설치 (c : \ openssl의 필요에 따라 Windows 32 또는 64)
keytool -exportcert -alias androiddebugkey -keystore "C:\Users\vibhor\.android\debug.keystore" | "c:\openssl\bin\openssl.exe" sha1 -binary | "c:\openssl\bin\openssl.exe" base64
따라서 전체 명령은 다음과 같습니다. [실행시 키 저장소 비밀번호를 입력하라는 프롬프트]
c:\Program Files (x86)\Java\jre7\bin>keytool -exportcert -alias androiddebugkey
-keystore "C:\Users\vibhor\.android\debug.keystore" | "c:\openssl\bin\openssl.ex
e" sha1 -binary | "c:\openssl\bin\openssl.exe" base64
Enter keystore password:
답변
Steps to create Hash Key.
1: Download openssl from Openssl for Windows . I downloaded the Win64 version
2:Unzip and copy all the files in the bin folder including openssl.exe(All file of bin folder)
3:Goto to the folder where you installed JDK for me it’s C:\Program Files\Java\jdk1.8.0_05\bin
4:Paste all the files you copied from Openssl’s bin folder to the Jdk folder.
그런 다음 C : \ Program Files \ Java \ jdk1.8.0_05 \ bin으로 이동하고 Shift 키를 누르고 마우스 오른쪽 버튼을 클릭하고 cmd를 엽니 다.
C:\Program Files\Java\jdk1.8.0_05\bin>//cmd path
이
keytool -exportcert -alias androiddebugkey -keystore “C : \ User \ ABC \ .android.keystore”를 지나면 Sha1 용입니다. openssl sha1-이진 | openssl base64
// 및 ABC는 시스템 이름입니다.