키해시값 이안나옵니다

키해시값을 확인하려고
keytool -exportcert -alias androiddebugkey -keystore <C:\Users\admin.android\debug.keystore> -storepass android -keypass android
를 cmd 에서 돌렸는데 아무것도안나오면 문제가있는건가요 ?

keytool -exportcert -alias androiddebugkey -keystore <debug_keystore_path> -storepass android -keypass android | openssl sha1 -binary | openssl base64

이렇게 돌린 값을 추출해야하는데 <debug_keystore_path> 여기 path 설정을 안하셨네요…

샘플앱부터 천천히해보려구
keytool -exportcert -alias androiddebugkey -keystore <C:\Users\admin.android\debug.keystore> -storepass android -keypass android
이렇게 실행하였는데 아무값도나오지않습니다 …뭐가문제일까요 …ㅠ

아니 그러니깐요 제 글을 천천히 다시 봐 주세요…^^;

위에 안된다고 하신 명령어를 보면 debug keystore가 있는지 확인하는 명령이구요. 이걸 돌려도 아무값도 안나오진 않는데 안나온다고 하신걸보면 path설정을 안하신거에요.

예를들어 debug keystore가 있는 경로를 위에 입력을 해 주셔야 하거든요. 보통은 local directory root 폴더에 .android/debug.keystore로 되어있어요. 그래서 일단은 내컴퓨터 local에 debug.keystore가 있는 path 를 찾는게 우선입니다.

찾았다면 둘째로 위의 개발자님께서 쓰신 명령어가 아닌 제가 댓글로 달아드렸던 명령을 통해서 keyHash추출이 가능해요. 여기서 추출된 keyHash를 개발자 사이트에 등록해 주시면 되는거에요.

또한 명령어로 keytool을 사용하고 hash를 만들기 위한 openssl base64를 환경변수에 등록이 되어있어야 합니다.

[debug_keystore_path]
OS X와 리눅스 : Eclipse "ADT > Preferences > Android > Build > Default debug keystore" 에서 확인 가능합니다.
예 : ~/.android/debug.keystore
Windows : Eclipse "Window > Preferences > Android > Build > Default debug keystore" 에서 확인 가능합니다.
Windows Vista와 Windows 7 예: C:\Users\<user>\.android\debug.keystore
Windows XP 예 : C:\Documents and Settings\<user>\.android\debug.keystore
keytool : $JAVA_HOME/bin 아래에 존재합니다.
openssl : Windows의 경우는 다운받아 설치합니다.[quote="01095921280, post:3, topic:15280"]

이 모든게 제가 아까 링크드린 가이드에 있어요 ㅠㅠ

어… keystore 옆에 path 랑적어서 답글을달았는데 이부분만 삭제가됬었네요
-keystore C:\Users\admin.android\debug.keystore
path 부분은 괄호 안에 넣으라고 되있어서 괄호안에 넣었었습니다.
열심히 읽어보면서하고있는데 잘안되서 죄송합니다 …ㅠ

C:\Users\admin.android\debug.keystore

위에 경로에 실제로 파일이 있나요??

추가로

keytool -exportcert -alias androiddebugkey -keystore C:\Users\admin.android\debug.keystore -storepass android -keypass android

위의 명령은 있는지 확인용도구요.

keytool -exportcert -alias androiddebugkey -keystore C:\Users\admin.android\debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64

이렇게 해도 안나오나요?

네 저기에 실제로 파일이존재하는걸 확인하였구요
아래 추가로 써주신 명령으로 입력하면
openssl 은 내부 또는 외부명령 , 실행할수 있는 프로그램 또는 배치파일이아닙니다.
라고나옵니다.

넵 그럽 거의 다왔네요! 이제 openssl만 인터넷에서 다운받아 설치하시면 될것 같아요!^^

keytool -exportcert -alias androiddebugkey -keystore <C:\Users\admin.android\debug.keystore> -storepass android -keypass android 이 명령을 넣을때는 아무것도 안나오는데

keytool -exportcert -alias androiddebugkey -keystore <C:\Users\admin.android\debug.keystore> -storepass android -keypass android | openssl sha1 -binary | openssl base64이명령에는 일단 값을주네요 ㅠ 감사합니다.

1개의 좋아요

아 …죄송한데요 출력된 해쉬키로 샘플앱등록하고 샘플앱을 돌리니까
10-08 17:37:42.321 32276-32420/com.kakao.sdk.sample E/DataScheduler: isDataSchedulerEnabled():false
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: com.kakao.util.exception.KakaoException: AUTHORIZATION_FAILED : invalid android_key_hash or ios_bundle_id or web_site_url
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at com.kakao.auth.Session.onAccessTokenCompleted(Session.java:400)
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at com.kakao.auth.Session$1.call(Session.java:581)
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at com.kakao.auth.Session$1.call(Session.java:546)
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
10-08 17:37:42.441 32276-32276/com.kakao.sdk.sample E/kakao.sdk: at java.lang.Thread.run(Thread.java:841)
이런에러가나오는데 해쉬키가 문제인가요 ?>ㅠㅠ

sample앱은 저희가 제공하는 sample앱을 돌리신거죠?
혹시 소스를 다시 빌드해서 install 하신건가요? 아니면 바이너리에 포함된 apk를 직접 설치를 한건가요?

  1. 직접 빌드를 해서 설치를 하여야 합니다.
  2. 빌드시 아까 debug.keystore로 패키징된 샘플앱이여야 정상로그인 됩니다.

두가지를 먼저 확인 부탁드려요

네 제공 된 샘플앱입니다 .
다시빌드해서 인스톨한건데요.
해쉬키를 잘못등록한건지 …잘모르겠네요 …

키해시 생성이 잘못된거같네요 쪽지드릴께요

정말 정말감사합니다 …
이게근데 왜 이렇게 잘못추출되는지 알진못하는건가요 ?

추출하는 코드를 보시면 알겟지만 keytool을 통해 명령어를 입력한 결과값을 openssl을 통해 base64로 인코딩을 하는거라

keytool 명령의 결과값에 따라서 값이 변할 수 있습니다. keytool은 java_home/bin에 있는데
아마도 위에

keytool -exportcert -alias androiddebugkey -keystore [debug_keystore_path] -storepass android -keypass android

이게 아무것도 안나온다고 했던것으로 보아 keytool 이 정상동작하는지부터 살펴봐야겠습니다.

그래도 쪽지로 전달해드린 정상적인 결과값을 알려드렸으니 원인 분석을 해보심이 좋겠어요^^

정말 감사합니다 …번거롭게해서 죄송합니다 ㅠ