본문 바로가기
프로젝트 만들어보기

[iOS] 실시간 공지 팝업 만들기 (Swift)

by 데브킹덕 2022. 11. 14.

 

 

 

 

 

 

💡배운점

  • Friebase Remote Config를 이용하여 복잡한 인프라를 설정하거나 새 버전을 출시하지 않고도 동적으로 기능을 켜거나 끄고, 세그먼트를 맞춤 설정하여 앱 동작과 모양을 변경할 수 있었음
  • Firebase A/B Testing을 이용하여 변경사항들을 미리 테스트하여 분석할 수 있었습니다.

 

👾 라이브러리

  • 'Firebase Remote Config'
  • 'Firebase A/B Testing

https://firebase.google.com/products/remote-config?gclid=CjwKCAiA68ebBhB-EiwALVC-NnEtAacIMWZvv8ByqrKAuaEVJCpsORt9BzM2N1ne0EI6Y9GzkwzgLhoCEtEQAvD_BwE&gclsrc=aw.ds 

 

Firebase 원격 구성 | 즉석에서 앱 맞춤설정

Firebase 원격 구성을 사용하면 Firebase Console에서 즉석으로 앱의 동작과 모양을 변경하고 애널리틱스에서 실적을 추적할 수 있습니다.

firebase.google.com

 

 

https://01pkd95.tistory.com/279

 

[iOS] Remote Config , A/B Testing (Firebase)

Firebase Remote Config (즉석에서 앱 제어 및 최적화) - 배포나, 업데이트 다운로드 없이 앱 동작과 모양을 변경할 수 있는 클라우드 서비스 ex) 공지사항 등에 사용할 수 있음 (평소에 숨겨 두었다가) -

01pkd95.tistory.com

 

AppDelegate

콘솔창에 찍힌 Token의 일부

-설치 인증 토큰을 이용하여 A/B 테스트 장치를 인증 할 수 있었음

 

 

 

튜플(Tuple) 데이터 타입을 이용해 여러개의 변수의 타입을 지정할 수 있었음

 

 

xib 파일 사용

- 유저 인터페이스 필드를 저장하기 위해 xib파일을 사용했다.

- xml 기반, nib은 바이너리 기반

- nib 기능 + Bundle이 아닌 flat file에 저장

flat file: 구조적 상호관계가 없는 레코드들이 있는 파일

- 빌드시 xib가 앱에 포함될 nib파일로 컴파일 됨

 

 

 

plist (property List Files)사용 

- 구조화된 텍스트 파일

- 앱의 설정값들을 관리할때 사용

ex)info.plist, GoogleService-info.plist

- key, value로 구성된 딕셔너리 형태 

 

 

- 데이터를 자주 가져올 수 있도록 minimumFetchInterval을 최소화함

- setDefault메서드를 사용하여 plist에 있는 값을기본 매개 변수 값으로 설정

 

 

 

 

 

 

 

- fetch 메서드를 통해 앱에서 사용할 수 있는 원격 구성 데이터를 가져올 수 있었음

 

 

 

 

 

 

 

 

 

 

- 성공시 activate 메서드를 통해 가져온 데이터를 적용하여 앱의 동작 및 모양에 대한 업데이트를 함

 

 

 

 

 

 

 

 

- 원격데이터 key 값을 입력해 value의 값을 가져올 수 있었음

- 줄바꿈이 의도대로 되지 않을 것 같아 replacingOccurrences 메서드를 통해 문자열을 바꾸었음

 

 

 

 

 

Alert 창을 이용해 확인하기를 누를경우 log가 찍히도록 이벤트를 주었음

 

 

 

앱 이벤트를 기록합니다. 이벤트에는 최대 25개의 매개 변수가 포함될 수 있습니다. 이름이 같은 이벤트는 매개 변수가 같아야 합니다. 최대 500개의 이벤트 이름이 지원됩니다. 최적의 보고를 위해 미리 정의된 이벤트 및/또는 파라미터를 사용하는 것이 좋습니다.