인터페이스 필수 요소
NavigationBar
: 앱 내 위치를 알려주고 탐색 기능을 제공하며 작업을 시작하고 정보를 전달하기위한 버튼 포함
Views
: 정보를 전달하기위한 요소
- Views들은 사용자가 스크롤, 삽입, 삭제, 정렬 행위를 하는데 도움을 주는 것들
- Views 예시: text, graphics, animation, interactive element
Controls
: 작업을 시작하고 정보를 Views에 전달
- Controls 예시: button, switch, textField, progress indicator
LaunchScreen
Onboarding
사용 이유
- 새로운 사용자들의 빠른 적응을 위해
- 처음 1회만 표출
- 상세한 사항 기재는 지양
- 사진보단 애니메이션 위주로
Loading
Modal
- 단순, 짧게, 집중적으로 구현
- modal을 닫는 버튼을 반드시 포함
Navigation
- 현재 위치를 사용자에게 알릴 수 있도록 해야함
사용자 데이터 접근 권한
- iOS 14.5+ 부터 IDFA(IDentifier for Advertising)에 접근하려면 App Tracking Transparency 접근 요청이 필요
- 데이터 접근 요청 관련 내용은 App Store에서 표출되도록 미리 정보를 제공 필수: App store connect에서 설정
안내문구
- 앱이 데이터를 수집하는 방법과 이유를 모호하지 않게 설명 - 두 가지가 들어가 있지 않으면 reject 사유
- 나쁜 예1) "더 나은 경험을 위해서는 마이크 접근이 필요합니다." - 이유가 모호한 문장
- 나쁜 예2) "마이크 액세스를 사용 설정합니다" - 이유를 제공하지 않은것
- 좋은 예) "앱은 코골이 소리를 감지하기 위해 밤에 녹음합니다." - 이유와 방법 모두 표출하고 있는 좋은 문장
Gesture
Color
- 가급적 다크모드도 대응되는 system color 사용 지향