



Storage Widget - 개인 앱 개발 후기
Storage Widget은 지금까지 1,050명 이상의 사용자에게 다운로드되고 있습니다. 혼자서 개발하고 출시한 이 앱을 만들면서 iOS 위젯, 다국어 지원, 광고 통합 등 많은 것을 배웠습니다. 개인 앱 개발을 생각 중인 분들께 도움이 될 경험담을 공유합니다.
앱의 기능
- 메인 앱: 원형 프로그레스 바로 저장공간 시각화
- 홈 화면 위젯: 소형, 중형, 대형 크기 지원
- 잠금화면 위젯: iOS 16.1+ (원형, 직사각형, 인라인)
- 다국어: 영어, 한국어, 일본어, 스페인어, 중국어
개발 기술
Swift + SwiftUI + UIKit 혼합, iOS 12.0+ 지원
- SnapKit (오토레이아웃)
- Google Mobile Ads SDK
- SPIndicator (토스트 알림)
마주친 주요 문제들
1. UIKit과 SwiftUI 통합
기존 UIKit 코드는 유지하면서 UI만 SwiftUI로 만들고 싶었어요. UIHostingController를 사용해 두 프레임워크를 통합했습니다.
2. 저장공간 계산 정확성
사용자가 "다른 앱과 숫자가 다르다"고 지적했어요. iOS 11부터 저장공간 정의가 바뀌었다는 걸 알고, "Important 리소스용 용량" API로 통일했습니다.
3. 위젯 동기화
앱과 위젯은 별개 프로세스라 수동으로 동기화해야 해요. WidgetCenter.shared.reloadAllTimelines()를 새로고침, 포그라운드 진입, 앱 시작 시에 호출합니다.
4. UI 디자인
처음엔 기능만 중심으로 했는데, 사용자들이 디자인을 중요하게 생각했어요. CircularProgressBar에 그라데이션과 그림자 효과를 추가하면서 며칠을 투자했습니다.
5. iOS 16 잠금화면 위젯
홈 화면 위젯과 완전히 다른 구조예요. accessoryCircular, accessoryRectangular, accessoryInline은 iOS 16.1+ 전용입니다.
6. 광고 배치
처음엔 광고를 많이 띄웠는데 사용자 평가가 떨어졌어요. 배너는 하단, 전면 광고는 새로고침 후에만 표시하도록 변경했습니다.
7. 다국어 지원
5개 언어를 관리할 때 각 언어의 문자 길이와 레이아웃이 다르더라고요. 각 언어별 Localizable.strings 파일을 따로 관리합니다.
배운 것들
- 디테일이 기능보다 중요 - 색상, 폰트, 여백이 사용자 만족도를 결정
- iOS 버전 호환성 - iOS 12부터 지원하면 잠재 사용자가 훨씬 많음
- 정확성은 기본 - 저장공간 앱이면 숫자가 가장 중요
- 광고는 신중하게 - 수익보다 사용자 경험을 우선시해야 함
- 실제 기기 테스트 필수 - 시뮬레이터와 다름, 특히 잠금화면 위젯은 기기에서만 가능
앱스토어 심사
좋았던 점: 3일 만에 첫 승인, 위젯 기능은 관대함
어려웠던 점: 광고 배치, 개인정보 보호 정책, 다국어 설명 (총 2주 소요)
마치며
간단해 보이는 저장공간 표시 앱도 정확한 계산, 좋은 UI, 다국어, 광고, 심사 등 많은 것들을 배웠습니다.
완벽한 앱을 목표로 하기보다는, 작은 것부터 시작해서 사용자 피드백을 받으면서 개선하는 방식이 가장 효과적이었습니다.
현재 Storage Widget은 1,000명 이상의 사용자들로부터 다운로드되고 있으며, 전 세계에서 피드백을 받고 있습니다. 이 경험이 다른 개인 개발자분들에게 영감이 되었으면 좋겠습니다. 함께 좋은 앱을 만들어봅시다!


Storage Widget App - App Store
Download Storage Widget by geeyong yoon on the App Store. See screenshots, ratings and reviews, user tips, and more games like Storage Widget.
apps.apple.com