lihak / KakaoTalkCordovaPlugin

A plugman compatible Cordova plugin for the KakaoTalk
MIT License
8 stars 10 forks source link

How do I get a token? #3

Closed stmake22 closed 7 years ago

stmake22 commented 7 years ago

KakaoTalk.login( function (result) { console.log(JSON.stringify(result)); }, function (message) { cat.toast('Error: '+message); }

result JSON dataset > id, nikname, userprofileImg

How do I get a token????

lihak commented 7 years ago

Why do you need the access token?

stmake22 commented 7 years ago

Social KakaoTalk want to log in after the access token instead of the application password from our company . The application does not have separate membership.

lihak commented 7 years ago

You can edit my source code. Please see the link below: Kakao Developer Docs

/* Android */ private void requestAccessTokenInfo() { AuthService.requestAccessTokenInfo(new ApiResponseCallback() { @Override public void onSessionClosed(ErrorResult errorResult) { redirectLoginActivity(self); }

        @Override
        public void onNotSignedUp() {
            // not happened
        }

        @Override
        public void onFailure(ErrorResult errorResult) {
            Logger.e("failed to get access token info. msg=" + errorResult);
        }

        @Override
        public void onSuccess(AccessTokenInfoResponse accessTokenInfoResponse) {
            long userId = accessTokenInfoResponse.getUserId();
            Logger.d("this access token is for userId=" + userId);

            long expiresInMilis = accessTokenInfoResponse.getExpiresInMillis();
            Logger.d("this access token expires after " + expiresInMilis + " milliseconds.");
        }
    });

// iOS [KOSession sharedSession].accessToken

stmake22 commented 7 years ago

하하.. 한국분이셧군용;; 저는 초보 하이브리드앱 개발자입니다. 답변해주셔서 너무나 감사하구요 답변달아주신 코드는 전부터 보았지만 lihak님의 Plugin에 적용방법을 잘 몰르겟네요.. 안드로이드 네이티브코드가 익숙치가 않습니다 죄송합니다. 현제 회사에서 하이브리드 앱을 개발중인대 회원가입이없는 시스템으로 소셜로그인 페이스북과 카카오톡 두가지로 자동회원가입이되고 서버 관리자분이 엑세스토큰을 비밀번호 대신으로 쓰신다고 하시기에 페이스북은 쉽게성공하였지만 카카오톡 연동후 본 플러그인으로는 받아올수없고 네이티브코드를 수정해야 하더라구요 그래서 위코드를 적용하려다가 앱이 점점 망가져가서 ㅠㅠ 문의올렷는데 lihak 님도 위 코드로 고치라고 하셔서 ㅠㅠ 죄송스럽지만 조금만더 자세히 설명해주실수있나요 감사드립니다

lihak commented 7 years ago

반갑습니다^^

요즘 바빠서 자세히 살펴볼 여유가 없네요. 간단히 테스트할 부분을 알려드릴게요. 플러긴 내의 KakaoTalk.java 파일을 보시면, SessionCallback 클래스가 있어요. 성공적으로 연결된 경우 onSuccess 함수가 호출되는데, 아래처럼 로그를 찍어 확인해 보세요. 세션에 이미 토큰이 들어있을 것으로 예상이 됩니다.

@Override public void onSuccess(UserProfile userProfile) { Log.v(LOG_TAG, "kakao : SessionCallback.onSessionOpened.requestMe.onSuccess - accessToken : " + Session.getCurrentSession().getAccessToken()); callbackContext.success(handleResult(userProfile)); }

행운을 빌어요~

stmake22 commented 7 years ago

해결되었습니다! 바쁘신와중에도 친절한 답변 정말 감사드립니다!^^ 행복한 하루 되세요!!!

lihak commented 7 years ago

다행입니다^^