當前位置: 首頁>>代碼示例>>Java>>正文


Java Session類代碼示例

本文整理匯總了Java中com.kakao.Session的典型用法代碼示例。如果您正苦於以下問題:Java Session類的具體用法?Java Session怎麽用?Java Session使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


Session類屬於com.kakao包,在下文中一共展示了Session類的13個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: onAttachedToWindow

import com.kakao.Session; //導入依賴的package包/類
/**
 * 로그인 버튼 클릭시 세션을 오픈하도록 설정한다.
 */
@Override
protected void onAttachedToWindow() {
    super.onAttachedToWindow();
    inflate(getContext(), R.layout.kakao_login_layout, this);
    setOnClickListener(new OnClickListener() {
        public void onClick(View view) {
            // 카톡 또는 카스가 존재하면 옵션을 보여주고, 존재하지 않으면 바로 직접 로그인창.
            final List<AuthType> authTypes = getAuthTypes();
            if(authTypes.size() == 1){
                Session.getCurrentSession().open(authTypes.get(0));
            } else {
                onClickLoginButton(authTypes);
            }
        }
    });
}
 
開發者ID:yongbeam,項目名稱:Android-kakaologin-gradle-sample,代碼行數:20,代碼來源:LoginButton.java

示例2: getAuthTypes

import com.kakao.Session; //導入依賴的package包/類
private List<AuthType> getAuthTypes() {
    final List<AuthType> availableAuthTypes = new ArrayList<AuthType>();
    if(TalkProtocol.existCapriLoginActivityInTalk(getContext())){
        availableAuthTypes.add(AuthType.KAKAO_TALK);
    }
    if(StoryProtocol.existCapriLoginActivityInStory(getContext())){
        availableAuthTypes.add(AuthType.KAKAO_STORY);
    }
    availableAuthTypes.add(AuthType.KAKAO_ACCOUNT);

    final AuthType[] selectedAuthTypes = Session.getCurrentSession().getAuthTypes();
    availableAuthTypes.retainAll(Arrays.asList(selectedAuthTypes));

    // 개발자가 설정한 것과 available 한 타입이 없다면 직접계정 입력이 뜨도록 한다.
    if(availableAuthTypes.size() == 0){
        availableAuthTypes.add(AuthType.KAKAO_ACCOUNT);
    }
    return availableAuthTypes;
}
 
開發者ID:yongbeam,項目名稱:Android-kakaologin-gradle-sample,代碼行數:20,代碼來源:LoginButton.java

示例3: logIn

import com.kakao.Session; //導入依賴的package包/類
/**
 *  Facebook SDK의 함수를 직접 호출해줄 필요 없이, 자동으로 로그인해준다.
 *  callback을 통해 User 객체가 반환되고, 에러 발생시 HaruException을 반환한다.
 *
 *  @param activity Facebook Login을 호출하는 activity
 *  @param callback Login Callback
 */
public static void logIn(Activity activity, final LoginCallback callback) {
    if (isLogining) {
        Log.i("Haru", "로그인중에는 로그인 함수를 중복 호출하실 수 없습니다.");
        return;
    }

    isLogining = true;
    currentActivity = new WeakReference<Activity>(activity);
    currentCallback = callback;

    // 카톡 또는 카스가 존재하면 옵션 다이얼로그를 보여주고, 존재하지 않으면 바로 직접 로그인창.
    final List<AuthType> authTypes = getAuthTypes();
    if(authTypes.size() == 1){
        Session.getCurrentSession().open(authTypes.get(0));
    } else {
        showKakaoServiceChooser(authTypes);
    }
}
 
開發者ID:haruio,項目名稱:haru-sdk-android,代碼行數:26,代碼來源:KakaoLoginUtils.java

示例4: getAuthTypes

import com.kakao.Session; //導入依賴的package包/類
/**
 * 카카오톡, 카카오스토리 등의 설치 유무를 체크하여 가능한 로그인 수단의 목록을 반환한다.
 * @return 카카오 로그인 수단 리스트 (AuthType)
 */
private static List<AuthType> getAuthTypes() {
    final List<AuthType> availableAuthTypes = new ArrayList<AuthType>();
    Activity activity = currentActivity.get();
    
    if (TalkProtocol.existCapriLoginActivityInTalk(activity)) {
        availableAuthTypes.add(AuthType.KAKAO_TALK);
    }
    if (StoryProtocol.existCapriLoginActivityInStory(activity)){
        availableAuthTypes.add(AuthType.KAKAO_STORY);
    }
    availableAuthTypes.add(AuthType.KAKAO_ACCOUNT);

    final AuthType[] selectedAuthTypes = Session.getCurrentSession().getAuthTypes();
    availableAuthTypes.retainAll(Arrays.asList(selectedAuthTypes));

    // 개발자가 설정한 것과 available 한 타입이 없다면 직접계정 입력이 뜨도록 한다.
    if(availableAuthTypes.size() == 0){
        availableAuthTypes.add(AuthType.KAKAO_ACCOUNT);
    }
    return availableAuthTypes;
}
 
開發者ID:haruio,項目名稱:haru-sdk-android,代碼行數:26,代碼來源:KakaoLoginUtils.java

示例5: checkSessionAndExecute

import com.kakao.Session; //導入依賴的package包/類
public static void checkSessionAndExecute(final APIHttpRequestTask requestTask, final HttpResponseHandler responseHandler) {
    if (Session.getCurrentSession().isOpened())
        HttpTaskManager.execute(requestTask);
    else if (!requestAccessTokenWithRefreshToken(requestTask, responseHandler)) {
        failedToRefreshAccessToken(requestTask, responseHandler, "session is closed before sending the request");
    }
}
 
開發者ID:yongbeam,項目名稱:Android-kakaologin-gradle-sample,代碼行數:8,代碼來源:APIHttpRequestTask.java

示例6: requestAccessTokenWithRefreshToken

import com.kakao.Session; //導入依賴的package包/類
private static boolean requestAccessTokenWithRefreshToken(final APIHttpRequestTask requestTask, final HttpResponseHandler responseHandler) {
    return Session.getCurrentSession().implicitOpen(new SessionCallback() {
        @Override
        public void onSessionOpened() {
            HttpTaskManager.execute(requestTask.updateSession());
        }

        @Override
        public void onSessionClosed(final KakaoException exception) {
            failedToRefreshAccessToken(requestTask, responseHandler, "session is closed during refreshing token for the request");
        }
    });
}
 
開發者ID:yongbeam,項目名稱:Android-kakaologin-gradle-sample,代碼行數:14,代碼來源:APIHttpRequestTask.java

示例7: logInAfterKakaoLogined

import com.kakao.Session; //導入依賴的package包/類
/**
 *  Kakao SDK로 로그인 이후, 로그인 함수를 통해 받은 Access Token을 가지고 로그인한다.
 *  callback을 통해 User 객체가 반환되고, 에러 발생시 HaruException을 반환한다.
 *
 *  @param callback Login Callback
 */
public static void logInAfterKakaoLogined(LoginCallback callback) {
    final Session currentSession = Session.getCurrentSession();
    if (currentSession == null) {
        throw new IllegalAccessError("Kakao SDK를 통한 로그인 (Session.initializeSession) 이후 호출하세요.");

    } else if (currentSession.isOpened()) {
        throw new IllegalAccessError("세션이 아직 열리지 않았습니다. "
                + "Kakao SDK를 통한 로그인 (Session.initializeSession) 이후 호출하세요.");
    }

    internalLogin(callback);
}
 
開發者ID:haruio,項目名稱:haru-sdk-android,代碼行數:19,代碼來源:KakaoLoginUtils.java

示例8: onResume

import com.kakao.Session; //導入依賴的package包/類
/**
 * {@link #logIn(android.app.Activity, com.haru.callback.LoginCallback)}을 통해
 * 로그인했을 경우에 해당 액티비티의 onResume에서 호출해야 하는 함수이다.
 *
 * @param activity 호출한 액티비티
 */
public static void onResume(Activity activity) {
    Session.initializeSession(activity, sessionCallback);
    if (isLogining && Session.getCurrentSession().isOpened()) {
        sessionCallback.onSessionOpened();
    }
}
 
開發者ID:haruio,項目名稱:haru-sdk-android,代碼行數:13,代碼來源:KakaoLoginUtils.java

示例9: onResume

import com.kakao.Session; //導入依賴的package包/類
protected void onResume() {
    super.onResume();
    // 세션을 초기화 한다
    if(Session.initializeSession(this, mySessionCallback)){
        // 1. 세션을 갱신 중이면, 프로그레스바를 보이거나 버튼을 숨기는 등의 액션을 취한다
        loginButton.setVisibility(View.GONE);
    } else if (Session.getCurrentSession().isOpened()){
        // 2. 세션이 오픈된된 상태이면, 다음 activity로 이동한다.
        onSessionOpened();
    }
        // 3. else 로그인 창이 보인다.
}
 
開發者ID:kkung,項目名稱:kakao-android-sdk-standalone,代碼行數:13,代碼來源:SampleLoginActivity.java

示例10: onAttachedToWindow

import com.kakao.Session; //導入依賴的package包/類
/**
 * 로그인 버튼 클릭시 세션을 오픈하도록 설정한다.
 */
@Override
protected void onAttachedToWindow() {
    super.onAttachedToWindow();
    inflate(getContext(), R.layout.kakao_login_layout, this);
    setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {
            Session.getCurrentSession().open(loginSessionCallback);
        }
    });
}
 
開發者ID:kkung,項目名稱:kakao-android-sdk-standalone,代碼行數:14,代碼來源:LoginButton.java

示例11: getTokenAuthHeaderValue

import com.kakao.Session; //導入依賴的package包/類
private static String getTokenAuthHeaderValue() {
    final StringBuilder autorizationValue = new StringBuilder();
    autorizationValue.append(ServerProtocol.AUTHORIZATION_BEARER).append(ServerProtocol.AUTHORIZATION_HEADER_DELIMITER).append(Session.getCurrentSession().getAccessToken());
    return autorizationValue.toString();
}
 
開發者ID:yongbeam,項目名稱:Android-kakaologin-gradle-sample,代碼行數:6,代碼來源:APIHttpRequestTask.java

示例12: logout

import com.kakao.Session; //導入依賴的package包/類
public static void logout() {
    Session.getCurrentSession().close(sessionCallback);
}
 
開發者ID:haruio,項目名稱:haru-sdk-android,代碼行數:4,代碼來源:KakaoLoginUtils.java

示例13: getAuthHeaderValue

import com.kakao.Session; //導入依賴的package包/類
private static String getAuthHeaderValue() {
    final StringBuilder autorizationValue = new StringBuilder();
    autorizationValue.append(ServerProtocol.AUTHORIZATION_BEARER).append(" ").append(Session.getCurrentSession().getAccessToken());
    return autorizationValue.toString();
}
 
開發者ID:kkung,項目名稱:kakao-android-sdk-standalone,代碼行數:6,代碼來源:APIHttpRequestTask.java


注:本文中的com.kakao.Session類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。