-
Flutter + Firebase ์ฐ๋Flutter ํ ํฌ 2023. 11. 24. 12:14
Firebase ์ฐ๋
1. Firebase ์ฝ์์ด๋ ํ ํ๋ก์ ํธ ์์ฑ -> ํ๋ก์ ํธ ์ด๋ฆ์ ๋ ฅ
2. ์ ๋๋ฆฌํฑ์ค๋ ํ์ฉ๋๊ฐ ๋ง๊ณ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ์ฉํ๋ ๊ธฐ๋ฅ์ด๊ธฐ์ ์ฌ์ฉ์ค์ ๊ทธ๋๋ก ๋๊ณ ๊ณ์
3. ์ ๋๋ฆฌํฑ์ค ๊ณ์ ์ ํ ๋๋ ์์ฑ ํ ์ ์ฉ, ์ ๋๋ฆฌํฑ์ค ์์น๋ ๋ฏธ๊ตญ์ผ๋ก ๋๊ณ ๊ณ์
4. ํ์ํ ํจํค์ง ๋ค์ด๋ก๋ (/pubspec.yaml)
firebase_core: ^3.1.1
5. Firebase ์ฝ์์์ ์ฐ์ธก์ ์๋ Flutter ์์ด์ฝ์ ๋๋ฌ ์ฐ๋ ์์
6. Firebase CLI ์ค์น ๋ฐ ๋ก๊ทธ์ธ, ์คํ
ํฐ๋ฏธ๋์์ ์๋๊ฐ ์ ๋ ฅ
npm install -g firebase-tools
firebase login
๋ค์ ๋จ๊ณ์ ๋์ค๋ ๋ช ๋ น์ด๋ค์ ํฐ๋ฏธ๋์ ์ ๋ ฅ
๋ง์ฝ ์๋์ ๊ฐ์ด ๊ฒฝ๊ณ ๊ฐ ๋ฌ๋ค๋ฉด ํฐ๋ฏธ๋์ export PATH="$PATH":"$HOME/.pub-cache/bin"์ ๋ ฅ
์์ ๋ฐฉ๋ฒ์ด ์๋ ๊ฒฝ์ฐ ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ํด๊ฒฐ, ๋น๋ฐ๋ฒํธ๋ android์ด๋ค.
keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore
Platform์ ํ์ ๊ฒฝ์ฐ ์ฌ์ฉํ๊ณ ์ ํ๋ ํ๋ซํผ์ ๋ง๊ฒ ์ ํ(Space bar๋ฅผ ํตํด ์ ํ๊ฐ๋ฅ) ํ ์ํฐ
7. Firebase ์ฐ๋์ฝ๋ ์ถ๊ฐ
void main() async { WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, ); runApp(const MyApp()); }
8. Firebase ์ฝ์ -> ํฑ๋๋ฐํด ๋ชจ์ ํด๋ฆญ์ ํตํด ํ๋ก์ ํธ ์ค์ ํ์ด์ง๋ก ์ด๋
9. ๊ธฐ๋ณธ GCP us-central๋ก ์ค์
10. ์๋๋ก์ด๋ ๋์งํธ ์ง๋ฌธ์ถ๊ฐ(ํ๋จ์ ๋ฉ๋ด ์ค ์๋๋ก์ด๋ ํด๋ฆญ)
[10 - 1] ํฐ๋ฏธ๋์ cd android && ./gradlew signingReport ์ ๋ ฅ
[10 - 2] ํฐ๋ฏธ๋์ ์ญ ๋จ๋ ๋ฆฌ์คํธ ์ค ์ต์๋จ์ debug์ ๋ณด๋ก ๋ฑ๋ก(์๋๋ก์ด๋๋ ์ถํ ์ถ์์ PlayConsole์์ ์ป์ sha์ ๋ณด๋ ๋ฑ๋กํด์ผํจ)
11. iOS App Store ID ์ถ๊ฐ
[11 - 1] ์ ํ ๊ฐ๋ฐ์ํ์ด์ง AppStore -> ์ฑ ์ ํ -> ์ข์ธก ๋ฉ๋ด ์ค ์ผ๋ฐ ์ ๋ณด -> ์ฑ์ ๋ณด ํ๋จ์ "์ผ๋ฐ ์ ๋ณด"์ ์๋ Apple ID ์ ๋ ฅ
[11 - 2] Firebase์ ์ ๋ ฅ
12. GCP ์ค์
[12 - 1] Firebase ํ๋ก์ ํธ ์ค์ ํ์ด์ง์ ํด๋ผ์ฐ๋ ๋ฉ์์ง ํญ ํด๋ฆญ ํ "Firebase Cloud Messaging API(V1)"์ฐ์ธก์ ์ 3๊ฐ ๋ฉ๋ด ํด๋ฆญ ํ ์ฝ์์์ ๊ด๋ฆฌ ํด๋ฆญ( ๊ตฌ๊ธ์์ GCP ๊ฒ์ ํ ์ ์๋ ๊ฐ๋ฅ)
[12 - 2] GCP์ ์ข์ธก ๋ฉ๋ด์์ "API ๋ฐ ์๋น์ค" -> "์ฌ์ฉ์ ์ธ์ฆ์ ๋ณด"ํด๋ฆญ
[12 - 3] ๊ฒฝ๊ณ ํ์๋์ด์๋ ๋ถ๋ถ๋ค์ ์์ ํด์ค์ผ ํ๋ค.
[12 - 4] iOS keyํด๋ฆญ -> "iOS ์ฑ"ํด๋ฆญ -> iOS ์ ํ์ฌํญ -> +๋ฒํผํด๋ฆญ -> ๋ฒ๋คID์ ๋ ฅ
[12 - 5] API ์ ํ์ฌํญ์์ ํค์ ํ์ํจ์ผ๋ก ๋๊ณ ์ ์ฅ
[12 - 6] Android ์ ํ -> Android์ฑ ์ ํ -> Android ์ ํ์ฌํญ์์ +ADD๋ฒํผ ํด๋ฆญ ํ ํจํค์ง์ด๋ฆ๊ณผ SHA-1์ ๋ ฅ ํ ์ ์ฅ
ํจํค์ง์ด๋ฆ๊ณผ SHA-1์ Firebase์ ์ฐ๋๋์ด์๋ ์ ๋ณด๋ฅผ ์ ๋ ฅํฉ๋๋ค
[12 - 7] API ์ ํ์ฌํญ์์ ํค์ ํ์ํจ์ผ๋ก ๋๊ณ ์ ์ฅ
'Flutter ํ ํฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Flutter Web Firebase Auth์ฐ๋ (0) 2024.07.08 Flutter Firebase Hosting ์ค์ (์น์ฌ์ดํธ๋ฐฐํฌ) (0) 2024.07.08 Flutter + FCM ์ฐ๋ (Flutter 3.0์ด์, ์๋ก์ดFCM์ ์ฉ๋ฒ์ , 3.0์ด์์ด ์๋์ฌ๋ ๊ฐ๋ฅํฉ๋๋ค) (0) 2023.11.24 Flutter Fastlane CI/CD(2) - Android (1) 2023.03.07 Flutter Fastlane CI/CD(1) - iOS (0) 2023.03.07