페이스북 로그인

페이스북 로그인 기능을 사용하기 위한 콘솔 사용 가이드 입니다.

게임팟 연동 이외 콘솔 사용법에 대해서는 Meta for Developers를 참고바랍니다.

Facebook Developer Platform: https://developers.facebook.com

GAMEPOT 대시보드에 Facebook 로그인 인증정보 등록

Facebook 인증 키를 대시보드에 등록하는 방법은 다음과 같습니다. GAMEPOT 대시보드 > 프로젝트 설정 > 인증 > Facebook 메뉴를 차례대로 클릭해 주세요.

Facebook로그인 설정

Facebook 로그인을 사용하시려면 GAMEPOT 대시보드 > 프로젝트 설정 > 인증 > Facebook 에서 총 3가지 항목에 대해 입력해주시면 됩니다.

  1. Facebook App ID

  2. Facebook Protocol Scheme

  3. Facebook Client Token

Facebook App ID / Protocol Scheme / Client Token 정보 확인 방법

(중요) 앱 생성 시 주의사항

  1. 이용 사례 > 앱에 필요한 기능 선택 > 'Facebook 로그인을 통한 인증 및 사용자의 데이터 요청' 선택 후 앱 생성

  1. 앱 생성 완료 후, 'Facebook 로그인 버튼 추가 맞춤 설정' 선택 > 권한 > email '추가'

Facebook Login 설정 값 확인

1. Facebook App ID

앱 만들기 > 앱 설정 > 기본 설정 >앱 ID

2. Facebook Protocol Scheme

'Facebook App ID' 앞에 'fb' 를 붙여 'Facebook Protocol Scheme' 에 입력해 주시면 됩니다.

3. Facebook Client Token

'앱 설정 > 고급 설정 >클라이언트 토큰 내용을 'Facebook Client Token' 에 입력해 주시면 됩니다.

4. 플랫폼 추가

1) Android

'앱 설정 > 기본 설정 >플랫폼 추가를 누르신 후 플랫폼 을 선택해주세요.

Android 정보를 입력해주세요

  • 키 해시 : 사용중인 키 해시(SHA-1) 값 입력

  • 패키지이름 : Package name 입력

  • 클래스 이름: Package name 뒤에 .MainActivity 추가 입력

2) iOS

'앱 설정 > 기본 설정 >플랫폼 추가를 누르신 후 플랫폼 을 선택해주세요.

iOS 정보를 입력해주세요.

  • 번들 ID: App Store Connect와 동일한 번들 ID를 입력해주세요.

유니티의 경우 URL Schemes 입력 (iOS)

유니티의 경우 ios에서 페이스북 연동을 하시려면 아래 방법과 같이 Schemes 값을 Supported URL Schemes에 입력해주어야 합니다.

[ 페이스북 로그인을 위한 iOS URL Schemes 획득 위치]

페이스북 URL Schemes에 들어가야 할 내용은 아래 방법으로 확인 할 수 있습니다.

  • 페이스북 콘솔 > 앱 설정 > 기본 설정의 APP ID 앞에 fb를 붙인 값

(예시) APP ID : 1822222 일 경우 URL Schemes는 fb1822222

Player Settings -> Other Settings -> Supported URL Schemes 에 페이스북에서 발급된 iOS URL Schemes 를 그림과 같이 입력해 주세요.

  • size에 '1'을 입력하면 Element 0 칸이 생겨 입력할 수 있습니다.

AppDelegate.swift 메서드의 코드 대체 (iOS Native)

다음 코드를 사용하여 AppDelegate.swift 메서드의 코드를 대체합니다. 이 코드는 앱이 시작될 때 SDK를 초기화하며, 로그인이나 공유 작업을 수행할 때 SDK가 Facebook 네이티브 앱의 로그인과 공유를 처리하도록 합니다.

// AppDelegate.swift
import UIKit
import FBSDKCoreKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
    
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
       
        
        ApplicationDelegate.shared.application(
            application,
            didFinishLaunchingWithOptions: launchOptions
        )
    }
    
    func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration {
        let sceneConfiguration = UISceneConfiguration(name: nil, sessionRole: connectingSceneSession.role)
        
        sceneConfiguration.delegateClass = SceneDelegate.self
        
        return sceneConfiguration
    }
}

class SceneDelegate: UIResponder, UIWindowSceneDelegate {
    
    func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
        guard let url = URLContexts.first?.url else {
            return
        }
        
        ApplicationDelegate.shared.application(
            UIApplication.shared,
            open: url,
            sourceApplication: nil,
            annotation: [UIApplication.OpenURLOptionsKey.annotation]
        )
    }

Last updated