프로그램/Android

KAKAO Developers 안드로이드 애플리케이션 만들기[캐 해시 등록]

잡식성초보 2017. 9. 1. 11:07

타사의 API 이용을 사용해서 자주 블로그에 글을 적다보니 애플리케이션 등록법에 대하여 글을 작성해 놓아야 할거 같아서 글을 쓰도록 하겠습니다.


1.  카카오 개발사이트 접속하여 로그인 하여 주시면 되겠습니다. 사이트는 아래와 같습니다.

https://developers.kakao.com/



2.  로그인 하는 즉시 앞에 앱만들기 부분이 있습니다. 앱에 대한 이름은 자신이 알아보기 쉬운 앱명을 하시면 됩니다. 굳이 안드로이드 앱과 동일한명을 필요는 없습니다. (아이콘 지정도 필수 사항이 아닙니다.)





3.  어플리케이션을 생성하셨다면 좌측에 보이는 카테고리중 일반 클릭하여 보시면 앱키에 대한 내용들이

옵니다


키값들이 카카오 API 사용할때 사용되는 키들입니다. 아래화면 처럼 앱키가 보이며 중요한것은 밑에 플랫폼 부분에서 플랫폼 추가 클릭하시면 되겠습니다


플랫폼 추가 버튼을 클릭시 나오는 창에서는 플랫폼 선택과 패키지명을 적어주시면 되겠습니다마켓URL 필수 사항이 아닙니다.




4.  플랫폼을 추가하셨다면 밑에 화면처럼 보일텐데요. 여기서 키 해시 값을 넣어주셔야 합니다.


키 해시값을 안넣어줘도 저장이 되고 필수라는 모양이 없지만 개발 API에서 글을 읽다보면 필수!라는 글이 나옵니다




그리고 카카오에서는 키해시 값을 얻는 방법이 아래글을 터미널에서 입력하여 얻으면 된다고 나오지만 실제로 


입력하여 나오는 값을 해시 값에 적용하고 프로젝트를 구동시키면 하나같이 모든 카카오 API들이 생성하는도중

init fail 뜹니다


해시값을 얻는 방법이 잘못된것인데요. 실제로 키 해시 값을 넣는방법을 아래 설명해놨습니다.


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





5.  실제 진짜  키 해시값을 구하는 방법은 스튜디오로 프로젝트를 실행시켜서 로그로 찍어낸 값을 넣어주시면 될거같습니다



private void getAppKeyHash() {
        try {
            PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES);
            for (Signature signature : info.signatures) {
                MessageDigest md;
                md = MessageDigest.getInstance("SHA");
                md.update(signature.toByteArray());
                String something = new String(Base64.encode(md.digest(), 0));
                Log.e("Hash key", something);
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            Log.e("name not found", e.toString());
        }
    }



6.  키 해시값을 입력하고 저장을 하였다면 이제부터는 간단하게 옆의 카테고리에서 사용하고 싶은 API를 클릭하여 OFF인 부분은 ON으로 변경만 해주시면 설정이 완료된것입니다.

반응형