Google I/O 2022 Firebase

June 03, 2022

Google I/O 2022 내용정리

Firebase란 google기술과 cloud서비스를 통합하여 앱 개발을 편하게 할 수 있는 하나의 플랫폼이다. Firebase는 편하고 안정적인 개발환경을 제공함으로써 개발자가 사용자와 비즈니스에 최고의 앱을 제공하는데 집중할 수 있도록 한다.

여기서는 이번 Google I/O에서 발표된 Firebase의 업데이트 정보를 정리해보려 한다. 기존 기능을 좀더 편리하게 개선하였고 또한 새로 출시된 기능을 소개하였다.

# Firebase Extensions

기존 firebase는 확장성이 매우 뛰어나지 않았고 핵심기능을 기반으로 한 추가 개발도 불가능했다. 만약 사용자가 굉장히 많아지면 그에 대한 맞춤로직에 대한 개발이 추가로 필요했다. 그러나 이제는 Extention Event를 사용하여 나에게 맞도록 확장프로그램 수정할 수 있다. 이벤트를 사용하여 확장프로그램의 런타임을 연결 후 추가로 개발을 진행하면 된다.

예를 들어 어느 쇼핑몰에서 고객이 구독을 취소한다면 고객에게 이메일을 보내려 한다. 그러면 먼저 Run Payments에서 고객의 구독 취소 이벤트를 설정 후 업데이트하자. 그 후에 해당 이벤트가 발생 했을 때 이메일을 보내는 추가 코드를 작성하면 된다.

이벤트 설정 후 추가 코드 작성

# 배포속도 개선

개발 후 배포할 때 몇가지 추가 작업이 필요했었다. 그러나 이 과정을 간편화였다. 이제는 “Firebase deploy” 라는 명령 하나도 배포 가능하다. 이를 이용하면 빠른 글로벌 CDN도 전적으로 활용할 수 있다.

# Firebase + Flutter

Firebase와 flutter를 함게 사용할 수 있는 리소스 제공하여 각종 장애와 안정성 문제 문제를 좀더 빠르게 추적하여 모니터링하고 수정할 수 있다. 기존은 flutter앱에서 crashlytics설정이 번거로웠으나 이제는 플러그인을 추가하고 초기화하기만 하면 된다. 그러면 crashlytics가 장애를 알아서 보고할 것이다. 또한 백엔드 장애 분석도구 역시 개선하였다.

간편한 crashlytics 설정성

# Fiterbase + Swift

Apple 개발자는 Swift 언어를 많이 사용하지만 Firebase에서는 호환성 때문에 objective–C만 지원했었다. 이부분 역시 개선하여 이제는 swift의 기능도 사용할 수 있다. swift의 codatble기능을 사용하여 코드 작성할 때 훨씬 짧게 구현이 가능하다.

swift의 codatble 기능 구현

# App Check 정식 출시

앱과 데이터의 보안을 위한 기능이다. 수신되는 트래픽이 정상적인 기기의 실제 앱에서 전송되는지 증명함으로써 API를 보호한다. 앱 Id와 기기 무결성을 모두 사용하므로 앱에서만 api와 연결된다는 걸 신뢰할 수 있다.

# Firebase app distribution 정식 출시

이 기능은 앱 출시 전 테스트를 위한 기능이다. 이를 사용하여 신뢰할 수 있는 테스터에게 앱의 출시 전 버전을 배포함으로써 출시 전 피드백을 받을 수 있다. 앱의 새로운 버전이 나오면 앱 내부에서 직접 테스터에게 알려준다. 이를 통해 테스터는 최신 릴리스에 대한 정보를 받아보고 가장 중요한 버전에 대한 피드백 제공이 가능하다.

# Firebase performance monitoring 정식 출시

테스터로부터 피드백을 받고 배포하더라도 문제가 발생할 수 있다. 이 기능은 배포 후 발생된 문제를 모니터링할 수 있는 기능이다. 앱의 성능 측정항목을 수집하여 정리하고, 성능 트랜드를 확인하며 사용자 관점에서 앱 환경 개선 방향 역시 확인할 수 있다. Performance alerts는 성능 측정지표가 특정 임계값을 초과하면 이메일을 보낸다. 즉, 사용자가 불편함을 느끼면 개발자가 알아차릴 수 있다. 이 알람은 개발자가 설정할 수 있다.

# Android studio에 앱 품질 인사이트 창을 도입

Firebase crashlytics에서 앱 장애가 발생하면 문제 해결을 위해 crashlytics console과 코드베이스를 오가며 오류를 찾아 수정했어야 했다. 이 워크플로우를 간단히 하기 위해 Android studio에 새로운 앱 품질 인사이트 창을 도입하였다. IDE가 앱의 최신 장애 데이터를 다운로드 하고 발생 빈도가 높고 많은 사용자에게 영향을 미치는 순으로 장애를 정렬한다. 이 인사이트 창에서 장애를 클릭하면 해당 장애에 대한 stacktrace를 볼 수 있으므로 이를 통해 장애를 일으킨 코드 행으로 바로 이동할 수 있다.

앱 품질 인사이트 창 이용현


Written by @yunjin cho

넥스트이노베이션의 기술, 문화, 뉴스, 행사 등 최신 소식 및 넥스트이노베이션이 겪은 다양한 경험을 공유합니다.