시작하고 종료하기
즉각적으로 시작하기
사람들이 새로운 앱을 평가하는 데에는 1~2분 이상이 소요되지 않는다고 흔히들 말한다. 이 짧은 시간을 사용자에게 유용한 콘텐츠를 즉각적으로 보여주도록 만든다면, 새 사용자의 관심을 자극하고 모든 사용자들에게 최상의 경험을 줄 수 있다.
가능한 스플래시 스크린이나 다른 종류의 시동 경험을 제공하지 않도록 한다. 사용자들이 당신의 앱을 즉시 사용할 수 있도록 하는 게 최상이다.
권장
권장하지 않음
사용자들에게 설정을 제공해 달라고 요청하지 말고, 대신에:
사용자 80%의 요청에 맞춰서 솔루션을 집중한다. 대부분의 사람들은 당신의 앱이 예상하는 대로 설정되어 있기 때문에 별도의 설정값을 제공할 필요가 없다. 아주 소수의 사용자만이 원할만한 기능 - 또는 대부분의 사용자가 한 번만 사용할 만한 기능이 있다면 그냥 놔둬라.
다른 소스로부터 최대한의 정보를 얻는다. 아이폰에 기본 설치된 앱이나 장비 설정에 사용자가 미리 설정한 값을 사용할 수 있다면, 시스템에 그 값들을 요청하라. 사용자가 다시 설정하도록 하지 말자.
셋업 정보를 요청해야만 한다면, 당신의 앱 안에서 입력하도록 알린다. 그 후, 최대한 빨리 그 정보를 저장하라.( 아마도, 당신 앱의 설정에) 이렇게 하면 사용자가 당신의 앱을 즐길 기회를 얻기도 전에 Setting(앱)으로 강제로 스위칭 되지 않는다. 나중에 그 설정값을 바꿔야 한다면, 앱의 설정에 언제라도 갈 수 있다.
가능한 로긴 요청을 늦춰라. 이상적으로는, 사용자들이 로긴 없이 당신의 앱의 대부분을 네비게이트 할 수 있고 그 기능들까지 일부 사용할 수 있는 것이 좋다. 예를들어, 앱 스토어는 사용자들이 무언가를 구매하기 전까지는 로그인을 요구하지 않는다. 사용자들은 무언가 유용한 것을 하기도 전에 로긴을 강요하는 앱을 버리는 경향이 있다.
If users must log in, display in the login view a brief, friendly explanation that describes the reasons for the requirement and how it benefits users.
Think carefully before providing an onboarding experience. (Onboarding introduces an app’s features and explains how to perform common tasks.) Before you consider onboarding, make every effort to design your app so that all its features and tasks are intuitive and easily discoverable. Onboarding is not a substitute for good app design. If you still feel that onboarding is necessary, follow these guidelines to create a brief, targeted experience that doesn’t get in the user’s way.
Give users only the information they need to get started. A good onboarding experience shows users what to do first or briefly demonstrates a few of the features that most users are interested in. If you give too much information to users before they have a chance to explore your app, you make users responsible for remembering details they don't need right away and you may send the message that your app is hard to use. If additional help is needed for specific tasks, provide that help only when the user is performing those tasks.
Use animation and interactivity to engage users and help them learn by doing. Add text sparingly and only if it enriches the experience; don’t expect users to read long passages. For example, don’t describe how to perform a simple task when you can use animation to show users what to do. To lead users through a more complex task, you might add transient overlay views that briefly describe each step as the user is about to do it. As much as possible, avoid displaying screenshots of your app because they’re not interactive and users can confuse them with app UI.
Make it easy to dismiss or skip the onboarding experience. After users have viewed the onboarding experience, they probably don’t want to view it again; other users may not want to view it at all. Be sure to remember the choice users make and don’t force them to make it every time they open your app.
Avoid asking users to rate your app too soon. Asking for a rating too soon tends to annoy users and may decrease the amount of useful feedback you receive. To encourage well-considered feedback, be sure to give users a chance to form an opinion about your app before you ask them to rate it. For example, you might wait until users have visited a minimum number of different screens or performed a minimum number of tasks.
일반적으로, 장비의 기본 방향에서 런칭하라. 아이폰의 기본 방향은 포트레이트이다; 아이패드는 현재의 장비 방향이다. 만약 당신의 앱이 랜드스케이프에서만 동작한다면, 항상 랜드스케이프에서 런치해서 사용자들이 장비를 회전시킬 수 있도록 한다.
앱의 첫 화면과 매우 유사한 런치 이미지를 제공하라. iOS는 앱이 시작하는 순간에 디스플레이 하므로 사용자에게 당신의 앱이 빠르다는 인상을 주고 콘텐트를 로딩할 충분한 시간을 주도록 한다.Launch Images에서 런치 이미지를 만드는 법을 배울 수 있다.
가능하면, 앱을 시작할 때 사용자에게 면책조항을 읽도록 하거나 EULA에 동의하도록 하지 않는다. 대신에, 앱스토어가 당신의 앱을 다운로드 하기 전에 면책조항이나 EULA를 디스플레이 하도록 해서 사용자가 당신의 앱을 얻기 전에 엑세스 할 수 있도록 한다. 앱 스토어에서 면책조항을 읽게 하거나 EULA에 동의하도록 하는 것이 사용자에게 최소한의 불편만을 줄 뿐더러, 모든 경우에서 가장 적당하다. 앱에서 그 아이템들을 제공해야 한다면, 앱의 UI와 잘 조화되도록 만들고, 사용자 경험상의 필요에 비지니스적으로 잘 균형을 맞추길 바란다.
앱이 재시동할 때, 사용자가 떠난 곳에서 다시 시작할 수 있도록 그 상태를 리스토어한다. 사람들이 당신의 앱에서 이전에 있었던 위치까지 가는 단계를 기억하지 않는다. 앱의 상태를 유지하고 리스토어 하는 방법은 “State Preservation and Restoration”을 보라.
항상 종료에 대비하라.
iOS 앱은 Close나 Quit 선택을 절대로 표시하지 않는다. 사람들은 다른 앱으로 스위치하거나 홈 스크린으로 돌아가거나, 장비를 잠자기 모드로 만듦으로서 현재 앱의 사용을 멈춘다.
사람들이 당신의 앱으로부터 전환해 나갈 때, iOS 멀티테스킹이 백그라운드로 전환시키고 화면상의 UI를 새 앱의 UI로 교체한다. 이 때 앱은 다음과 같은 작업을 해야 한다:
사용자의 데이터를 가능한 빨리, 타당한 만큼 자주 저장한다. 왜냐하면 백그라운드의 앱은 언제든 종료되거나 제거될 수 있기 때문이다.
멈출 때 현재 상태를 가능한 디테일하게 저장한다. 이것은 사람들이 당신의 앱으로 다시 돌아왔을 떄 컨텐스트를 잃어버리지 않도록 한다. 예를 들어, 앱이 스크롤하는 데이터를 표시한다면, 현재 스크롤 위치를 저장한다. “State Preservation and Restoration”을 통해 앱의 상태를 저장하는 보다 효과적인 방법에 대해 배울 수 있다.
몇 몇 앱들은 사용자가 포어그라운드에서 다른 앱을 구동하는 중에도 백그라운드에서 계속 동작할 필요가 있다. 예를 들어, 사용자들은 한 앱에서 재생중인 음악을 할일 리스트 앱이나 게임을 하는 중에도 계속 듣기를 원한다. Multitasking에서 멀티테스킹을 바르고 아름답게 다루는 법을 배우자.
절대 프로그래밍적으로 iOS 앱을 종료하지 마라. 사람들은 이것을 크래시 난 것으로 해석하는 경향이 있다. 만약 어떤 것이 당신의 앱을 의도한 대로 동작하지 못하게 한다면, 사용자에게 그 상황에 대해 알리고 어떻게 해야 할지를 설명하라. 문제가 얼마나 심각한지에 따라, 다음 두가지 중 하나를 선택할 수 있다:
모든 앱 기능을 사용할 수 없다면, 문제를 설명하고 해결책을 제시하는 매력적인 화면을 표시한다. 이것은 사용자들에게 피드백을 주고 당신의 앱에는 아무 문제가 없다고 안심시킨다.여전히 사용자는 콘트롤 권한을 가지고 있으며, 상황을 개선해서 당신의 앱을 계속 사용할 것인지 아니면 다른 앱으로 스위칭 할 것인지를 결정할 수 있다.
앱의 일부 기능만이 사용불가라면, 화면이나 경고창을 사용자가 그 기능을 사용하려 할 때에 표시한다. 사용자는 앱의 나머지 영역이라도 사용할 수 있다. 경고창을 사용하기로 결정했다면, 사용자가 정상동작하지 않는 기능에 접근하려할때에만 표시한다.
Copyright © 2014 Apple Inc. All rights reserved. Terms of Use | Privacy Policy | Updated: 2014-03-10