본문 바로가기

# 02/Flutter

[Flutter] Shorebird

반응형

코드 푸시(Code Push) 란?

리액트 네이티브로 개발하는 주된 원인이 바로 코드 푸시입니다. 코드 푸시는 개발자가 앱을 심사 없이 바로 업데이트할 수 있도록 하는 클라우드 서비스입니다. 이를 이용하여 사용자에게 영향을 미치는 버그를 신속하게 수정할 수 있고 새로운 기능이나 성능 개선도 즉각적으로 반영할 수 있습니다. 앱을 삭제 후 재설치 하지 않고 앱 스토어로 이동하지 않고 업데이트가 가능합니다.

단, 네이티브 코드 변경 시에는 스토어를 통해 배포해야 하며 코드 푸시를 통한 업데이트만 진행하고 스토어 배포를 하지 않는다면 신규 사용자는 스토어에서 다운로드한 후 다시 첫 실행에 코드 푸시 업데이트도 해야 한다는 단점이 있어 스토어를 통한 출시도 주기적으로 진행하는 것이 좋습니다.

 

 

 

Shorebird 란?

Shorebird는 Flutter의 코드 푸시 도구입니다. Shorebird는 Flutter 전문가 집단이 개발하여 신뢰도가 높으며, 다른 OTA(Over-The-Air) 배포 도구보다 서비스가 안정적이라는 장점이 있습니다.

Shorbird 의 파운더인 Eric Seidel 은 구글 플러터 팀의 엔지니어링 매니저였습니다.

구글에서 일하는 동안 플러터에 코드 푸시 기능을 탑재하려 했지만, 구글 플레이의 정책과 방향에 따라 플러터에 코드 푸시 기능을 넣지 못했습니다.

구글 플레이는 앱의 잠수함 패치 보다 모든 앱 업데이트를 리뷰하고 싶어했기 때문입니다.

구글 플레이는 구글에 큰 수익을 만들어 주는 곳이었기 때문에 이와 싸울 수 없다고 판단한 Eric Seidel 은 구글을 나와 회사를 차렸는데 그곳이 Shorebird 입니다.

Shorebird 의 모토는 'Flutter for Business' 입니다. 코드 푸시는 이를 위한 첫 큰 발자욱 입니다.

 

현재 안드로이드는 정식 출시 되었고 iOS 는 alpha 버전 입니다.

 

 

 

Shorebird 설치

https://docs.shorebird.dev/guides/release/ios

https://docs.shorebird.dev/guides/release/android

 

위의 링크 대로 하면 어렵지 않게 설치할 수 있습니다.

 

 

https://console.shorebird.dev/

 

콘솔에서 업로드 한 앱을 확인 할 수 있고(설치 중간에 동의랑 앱이름 입력하는 데 무조건 y 눌렀더니 앱이름 y 됨..)

 

 

앱을 클릭하면 업로드 된 버전들 확인할 수 있습니다!

 

 

버전 클릭하면 해당 버전에 올린 패치를 확인 할 수 있고 앱 실행시 현재 앱 버전에 대한 패치가 존재하는 경우 업데이트가 되는 걸 알 수 있습니다!

 

 

Insights 탭에서 패치 인스톨 수를 알 수 있고 이걸로 비용책정을 합니다!

 

 

 

 

Shorebird 단점

iOS 성능 상 이슈

  • Android는 현 시점에서 정식으로 지원하고 iOS는 알파 버전으로 성능 상 이슈가 있습니다. Shorebird 로 업데이트 한 앱인 경우 속도 측면에서 많이 떨어지고 Shorebird 측에서는 몇 달 내로 이 문제를 해결할 것이라고 합니다.
  • 해당 링크 에서 이슈 확인할 수 있습니다.

 

비용 문제

  • 리액트 네이티브 인 경우 코드 푸시가 무료로 진행되는데 Shorebird 는 유료이고 install 수로 카운팅 됩니다.
  • 무료 플랜인 경우 매달 5,000 번 무료 그 이후 매 install 시 0.005달러 추가 부과
  • $20 for up to 50K patch installs
  • $100 for up to 300K patch installs
  • $300 for up to 1M patch installs
  • $700 for up to 2.5M patch installs
  • $1,250 for up to 5M patch installs
  • $2,000 for up to 10M patch installs
  • 큰 앱인 경우 컨택하여 조정 가능하다고 합니다.

 

 

 

 


https://github.com/jiyeonjoy/flutter_shorebird_test_app

 

GitHub - jiyeonjoy/flutter_shorebird_test_app

Contribute to jiyeonjoy/flutter_shorebird_test_app development by creating an account on GitHub.

github.com

 

반응형