안단테 안단테

[Flutter] 2. facebook 로그인 테스트 (firebase console setting) 본문

IT 기술/Flutter

[Flutter] 2. facebook 로그인 테스트 (firebase console setting)

안단테에 2022. 3. 25. 18:26
728x90
반응형

https://andante-sloth.tistory.com/116

 

[Flutter] 1. facebook 로그인 테스트 (firebase 프로젝트 생성)

우리가 어플을 사용하다 보면 SNS 로그인을 필요한 시점이 있다 그래서 나는 구글 / 페이스북 / 네이버 / 카카오 로그인 구현을 예제코드랑 함께 업로드 할 예정이다 모든것이 그렇듯이 환경에 따

andante-sloth.tistory.com

 

위 링크에서 파이어베이스 프로젝트를 생성했다면 이제 세팅을 해야 된다.

개발도 어려운데 세팅이 더 어려운거 같다.. 설정해줘야되는게 너무 많아 ㅡ.ㅡ..

 

우리는 안드로이드 먼저 세팅을 해줄거니깐 메인 화면에서 안드로이드 버튼을 누르자

 

 

 

자 그러면 아래와 같은 화면이 나오는데 어디에서 이걸 확인해서 입력하냐..

 

 

 

먼저 내 IDE 환경은 vscode이다.

그리고 아래 명령어로 flutter 프로젝트를 새로 만들었다.

 

flutter create snslogin

 

 

만약 동일하게 만들었다면 snslogin이라는 폴더 밑에 flutter 기본 구성이 생성된다.

 

우리가 파이어베이스에 추가할 항목은 총 3가지

 

먼저 Android 패키지 이름은 flutter 프로젝트 안에 아래 경로에 있다

snslogin > android > app > src > main > AndroidManifest.xml

 

만약 찾기 어렵다고 하면.. vscode 기준 Ctrl+P 버튼을 눌러 AndroidManifest를 입력해주자

 

여기서 Android 패키지 이름은 AndroidManifest의 package값을 입력해주면 된다.

나 같은경우에 com.example.snslogin 을 입력한다.

 

앱 닉네임은 그냥 하고 싶은거 입력해라.

나는 snslogin이라고 하겠다.

 

마지막으로 디버그 서명 인증서 SHA-1 인데.. 이거 잘 따라와야된다.

사용자 이름으로 되어 있는 경로에 .android 폴더가 존재한다.

해당 폴더로 이동하자.

 

.android 폴더까지 들어갔다면 위에 폴더 주소창에 cmd . 을 입력하자

 

그러면 아래와 같이 cmd 창이 뜰거다

 

keytool -list -v -alias androiddebugkey -keystore debug.keystore

입력 후 비밀번호는 공통인 android 입력하면 된다.

 

그러면 SHA1 으로 나온 값을 복사해서 입력해주면 된다.

최종으로 입력한 화면.

앱 등록 버튼을 눌러서 다음 단계로 이동하자

 

 

구성 파일 다운로드 나오는데 일단 다운로드 받고 설명과 동일하게 맞춰주자

 

 

다운로드 받을 파일을 snslogin 밑에 android 밑에 app 밑에다가 붙여넣기를 해주면 된다.

 

 

그리고 build.gradle에 추가를 해줘야 되는데 2가지 파일에 추가를 해야 된다.

 

 

먼저 프로젝트 수준의 build.gradle은 음... 헷갈린다면 build.gradle 중 아래 있는 파일이다.

 

 

여기서 똑같이 classpath 복사해서 넣어주고 저장하자.

 

 

저장하면 아래에 뭐 어쩌구 저쩌구 나오는데 Always 클릭~

 

 

그리고 그 위에 있는 build.gradle열어서 똑같이 추가해주자.

 

 

 

 

 

자 혹시... 애매하다.. 어디다 추가해야될지 모르겠다.. 그러면 그냥 아래 소스코드 복사 붙여넣기 하자.

 

1. 프로젝트 수준의 build.gradle (아래 있는 파일)

buildscript {
    ext.kotlin_version = '1.6.10'
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:4.1.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

        // Add this line
        classpath 'com.google.gms:google-services:4.3.10'
    }
}

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

 

 

2. app 수준의 build.gradle (위에 있는 파일)

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
    localPropertiesFile.withReader('UTF-8') { reader ->
        localProperties.load(reader)
    }
}

def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
    throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
    flutterVersionCode = '1'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
    flutterVersionName = '1.0'
}

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

// Add this line
apply plugin: 'com.google.gms.google-services'

android {
    compileSdkVersion flutter.compileSdkVersion

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = '1.8'
    }

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }

    defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
        applicationId "com.example.snslogin"
        minSdkVersion flutter.minSdkVersion
        targetSdkVersion flutter.targetSdkVersion
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }

    buildTypes {
        release {
            // TODO: Add your own signing config for the release build.
            // Signing with the debug keys for now, so `flutter run --release` works.
            signingConfig signingConfigs.debug
        }
    }
}

flutter {
    source '../..'
}

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

    // Add this line
    implementation platform('com.google.firebase:firebase-bom:29.2.1')
    implementation 'com.google.firebase:firebase-analytics'
}

 

자 이렇게 하면 일단 firebase 설정은 끝났다...

하... facebook developer 설정도 해야되니..

어서 해보자.. 

728x90
반응형
Comments