EmojiBox 1.1.0 릴리즈 회고

liko apps·2022년 11월 20일
0

리코앱스 이야기

목록 보기
2/8

EmojiBox(이모지박스) 1.1.0 릴리즈 완료

(https://apps.apple.com/us/app/emojibox-face-sticker/id1624326541)


기능 추가

이번 업데이트는 이모지박스의 첫 메이저 업데이트였고, 아래의 기능을 추가했다.

1. 이펙트 기능 추가

Metal을 활용한 그래픽 라이브러리 (https://github.com/MetalPetal/MetalPetal)을 사용해서 모자이크, 블러 처리를 추가했다. 기존 이모지박스가 이모지로 얼굴을 감추는 기능을 제공하고 있었지만, 이모지는 좀 가벼운 느낌때문에 진지하게 쓸 경우에는 맞지 않다는 요청이 있어서 이를 반영했다. (사실 처음부터 하고 싶었지만 시간이 없었다 ㅠ)

아무튼 OpenGL을 가볍게 사용한적은 있었지만 혼자서 제대로 쓰려니 어려웠다. 다행히 MetalPetal 라이브러리가 워낙 잘 만들어져있어서 예제를 참고하면서 며칠 낑낑대고는 잘 해결할 수 있었다.

2. Speical Offer 기능 추가

특별 할인을 통해 판매를 촉진해보고자 처음 넣은 기능으로, 기존 인앱 상품에 추가로 할인 상품을 만들어서 특정한 기간에만 원래 상품대신 할인 상품을 노출해서 특별 세일을 하였다. (이번에는 블랙프라이데이 세일!)

다행히 인앱 상품을 추가하고, 기존 상품을 감춘다던가 하는걸로는 리젝이 되지 않고 한방에 앱 심사에 통과할 수 있었다. Special Offer 기능은 서버가 없는 우리 앱이지만 Public iCloud 를 이용해 상품 노출여부를 처리할 수 이었다.

3. SwiftUI View Extract 처리

이번 버전 개발이 거의 끝나갈 시점에 (https://eunjin3786.tistory.com/559) 링크의 글을 읽었다. 덕분에 SwiftUI View의 redraw 타이밍을 좀 더 잘 알 수 있었고, 귀찮아서 Extract 처리하지 않고 내부에서 함수 추출해놓았던 것을 struct extract 처리를 좀 더 해서 효율적으로 앱 redraw 가 가능하게 수정했다.


만족한 점

  • 예상했던 개발 완료 시점과 실제 개발 완료 시점을 거의 정확하게 예측했다는 점
  • Public iCloud 활용을 좀 더 잘 할 수 있게 된 점
  • 일부 뷰에서 동영상 관련 처리를 할 일이 있었는데, 예전에 동영상 편집기 개발했던게 아주 도움이 됐었다.

아쉬운 점

  • gl 관련 코드를 다룰 일이 있었는데 (그라데이션 마스킹 처리) 예전에 공부를 제대로 안하고 어설프게 해놓은 점이 아쉬웠다. (사실, 개발하면서 gl 관련해서 다룰 일은 더는 없을 줄 알았다. ㅠ)
  • xcode cloud를 활용한 배포를 처음 해보았는데 carthage가 원래 의도와는 다르게 매번 빌드가 이뤄지다보니 무쓸모였다. 기존 carthage 빌드해놓은걸 계속 활용할 방법을 찾아봐야겠다.
  • 배포 전에 뷰에 대한 snapshot을 찍어서 디자인 체크를 예전에 했었는데 UITest를 활용하다보니, 추가 구현이 이뤄짐에 따라 UITest가 다 깨져서 활용을 제대로 못했다. SwiftUI의 preview 를 활용한 UI릴리즈 테스트 방법을 찾는 중.

끝.

profile
제주에서 iOS 앱을 만들고 있습니다. 개발관련 회고 / 정리 블로그

0개의 댓글