도입

이번 포스팅에서는 Flutter에 onDevice Translation 적용을 공유할 예정이다.

기능

  1. 명언을 영어로 등록
  2. 명언을 각 나라 언어로 자동 번역
  3. 원본 확인 가능

위와 같은 기능을 제공할 예정이다. 그래서 아래와 같이 방법을 알아보았다.

방법1. Google translate API 활용

https://cloud.google.com/translate/

  • 장점: 추가 다운로드 필요 X
  • 단점: 과금 발생 가능성 O, 인터넷 연결 필요

방법2. Firebase ML Kit 활용

https://firebase.google.com/docs/ml-kit

  • 장점: 과금 발생 가능성 X
  • 단점: ML Kit 모델을 위한 추가 다운로드 필요 O

가장 중요하게 생각한 기준은 역시 과금! 💵

그래서 Firebase ML Kit를 활용하기로 결정!

문제점

https://pub.dev/packages/google_ml_kit

iOS의 onDevice Translation을 지원하지 않는다는 점...

해결책

  1. Google translate API로 방법 변경
  2. 번역 기능 Drop..

번역을 하지 않고 나라 별로 명언을 찾아 제공할까라는 생각도 했다.
그러나 지원 나라마다 명언을 찾는 것도 어렵고 추후 운영 관리에 리소스를 많이 차지할 것이라 판단되었다.
그래서 기능을 Drop할 것을 염두하고 방법을 계속 찾았는데...

https://github.com/bharat-biradar/Google-Ml-Kit-plugin/issues/153#issuecomment-958121560

역시!! 나와 같은 문제로 고민하는 사람이 있었고 해결책을 추가해두었다.
iOS 개발자는 아니라 PR를 생성해 정식 버전에 추가 된 것은 아니지만 추가로 구현해 해결한 방법이다. 나에게 적합한 방법이다! 🎉

스크린샷

흠🤔 명언한 사람의 이름은 왜 번역이 안되지.. 안드로이드에서는 되던데!
이건 나중에 한번 알아봐야겠다.

그런데 앱 용량이라는 또 다른 문제가 생기는데...😂

profile
행복을 고민하는 블로거

0개의 댓글