일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 리펙토링
- UITextView
- ribs
- RxCocoa
- MVVM
- combine
- SWIFT
- map
- Refactoring
- Observable
- 스위프트
- swiftUI
- 리펙터링
- Protocol
- Xcode
- swift documentation
- Clean Code
- HIG
- 리팩토링
- collectionview
- uitableview
- clean architecture
- ios
- rxswift
- Human interface guide
- uiscrollview
- 클린 코드
- UICollectionView
- tableView
- 애니메이션
- Today
- Total
목록Firebase (10)
김종권의 iOS 앱 개발 알아가기
Crashlytics 로그란? Firebase에서 크래시 전송 설정을 하면 (Firebase Crashlytics와 dsym 파일 전송), 크래시가 발생한 경우 크래시를 정보를 파이어 베이스에 전송 기본적인 크래시 정보를 Crashlytics에 보내지만, 크래시가 발생하기 전의 특정한 정보를 알고싶은 경우 로그 전송이 가능 Crashlytics 설정 기본적인 Crashlytics 설정은 이전 포스팅 글 참고 dsymbol은 Release환경에서만 보내도록 설정했으므로 테스트를 위해 Xcode 스킴에서 Build Configuration을 Release로 변경하고 Debug executable 체크를 해제 아래와 같은 코드를 준비하고 크래시를 발생시켰을때 파이어베이스에 crash 정보가 나왔으면 준비 완료..
Firebase 연동 cocoapod으로 firebase remote config 설치 pod 'Firebase/RemoteConfig' GoogleService-info.plist 추가 (이전 포스팅 글 참고) 콘솔에서 Remote config 설정 Firebase console > 모든 제품 > Remote Config 선택 구성 만들기 선택 매개변수 추가 변경사항 게시 버튼 클릭하면 클라 앱에 반영 (앱에서 테스트가 필요하므로 바로 클릭) Remote Config 사용 AppDelegate의 didFinishLaunchingWithOptions에서 remote config 세팅 minimimFetchInterval 값 설정: 0으로 설정하면 가능한 빠르게 config값을 firebase에서 가져오고..
Firestore란? NoSQL 형태의 클라우드 데이터 저장소 REST API와 같은 것을 쓰고, 데이터를 gRPC이나 웹 소켓과 같이 stream형태로 받고 싶은 경우 사용 DB에 "구독"을 할 수 있는 개념이 있어서, 앱이 DB에 구독을 하고 있을 때 서버에서 DB의 수정이 생기면 자동으로 앱에 데이터를 넘겨주는 시스템 존재 Firebase Console 앱 준비 Firebase 앱 생성 GoogleService-Info.1plist 다운 후 프로젝트에 추가 [Firestore Database - 데이터베이스 만들기] 클릭 테스트 모드에서 시작 클릭 이후 모두 디폴트로 하고 완료 프로젝트에 Firestore 연동 Firestore SDK 다운 (SPM으로 아래 링크로 설치) github.com/fir..
이메일 링크 인증 로그인 링크를 사용자가 입력한 이메일로 전송 편리한 가입 및 로그인 UX 제공 사용자가 모바일 기기에서 번거롭게 비밀번호를 입력하거나 기억할 필요 없이 안전하게 로그인 가능 주의: 딥링크 수신 시 SceneDelegate의 scene(_:continue:) 메소드가 필요하므로, SceneDelgate를 삭제 x Firebase 에서 앱 등록 앱 등록 GoogleService-Info.plist 다운로드 Firebase 초기화 및 로그인 상태에 따라 플로우를 담당하는 AppController 정의 AppController 코드 // AppController.swift import UIKit import Firebase final class AppController { static let ..
1. 실시간 채팅 앱 구현 방법 (MessageKit, Firebase, Firestore) - 채팅 UI 2. 실시간 채팅 앱 구현 방법 (MessageKit, Firebase, Firestore) - Firestore Firebase 연동 App 생성 후 GoogleService-info.plist 파일 추가 Firebase Authentication 로그인 없이도 사용할 수 있도록 익명 선택 Firebase Storage 연동 이미지를 저정하는 서버 제공 - 아래 페이지에서 시작하기 클릭 SPM으로 Firebase SDK 설치 https://github.com/firebase/firebase-ios-sdk.git FirebaseAuth, FirebaseFirestore, FirebaseFiresto..
1. 실시간 채팅 앱 구현 방법 (MessageKit, Firebase, Firestore) - 채팅 UI 2. 실시간 채팅 앱 구현 방법 (MessageKit, Firebase, Firestore) - Firebase SPM으로 MessageKit 설치 https://github.com/MessageKit/MessageKit 화면 플로우 MessageKit 주요 모듈 MessagesViewController: UICollectionView를 상속하여 구현된 모듈이고 이 모듈을 상속하여 CahtViewController 생성 내부적으로 messagesCollectionView 프로퍼티 사용 가능 import UIKit import MessageKit class ChatVC: MessagesViewCont..
dSYM이란 dSYM(debug SYMBOL): Xcode의 디버그 symbol파일 앱 설치 시 매번 생성되는 UUID을 기록으로 하여, Crashlytics SDK가 앱에 내장되어 있으면 crash발생 시 AppStoreConnect에 자동으로 리포팅 Firebase Crashlytics에서는 이 dSYM파일에 crash가 발생될때 로그를 기록 Firebase Crashlytics의 dSYM 수동 업로드 방법 자동으로 dSYM이 올라가지 않아, Firebase - Crashlytics에 아래와 같은 메시지 확인 dSYM 파일 다운로드 App Store Connect > 나의 앱 > 앱 선택 > TestFlight > 빌드 버전 선택 > 빌드 메타데이터 > dSYM다운로드 dSYM파일 업로드: term..
Firebase프로젝트 세팅 Firebase홈페이지 3번에서 사용 설정 누르면 아래화면처럼 loading Xcode프로젝트 세팅 Firebase SDK연동, FirebaseApp.configure()까지 작성: ios-development.tistory.com/230 앱에 crashlytics 추가 pod 'Firebase/Crashlytics' pod 'Firebase/Analytics' build phase에서 빌드스크립트 생성 후 작성 (4번: build script 이름 설정) 5번 코드: debug버전에서는 dSYM을 올리지 않으므로 (배포하지 않으므로) debug버전이 아니면 crashlytics를 실행하라는 의미 if [ "${CONFIGURATION}" != "Debug" ]; then "..