×

iOS 8人机交互指南(4)

96
暮春小友
2015.03.30 23:56* 字数 4011

前一篇:iOS 8人机交互指南(3)

4. 启动与停止(Starting and Stopping)

4.1 立即启动(Start Instantly)

It’s often said that people spend no more than a minute or two evaluating a new app. When you make the most of this brief period by presenting useful content immediately, you pique the interest of new users and give all users a superior experience.

据说,人们评价一款新 app,用时不会超过1、2分钟。当你充分利用这短暂的时间来立即展示有用内容时,你就会吸引新用户的兴趣,同时带给所有用户较好的体验。

IMPORTANT

Don’t tell people to reboot or restart their devices after installing your app. Restarting takes time and can make your app seem unreliable and hard to use.

If your app has memory-usage or other issues that make it difficult to run unless the system has just booted, you need to address those issues. For some guidance on developing a well-tuned app, see Use Memory Efficiently.

注意:不要让用户在安装 app 后重启他们的设备。重启花费时间,也使 app 看上去不可信赖、很难用。

如果 app 需要使用内存或者不重启系统就很难运行,那就需要明确说明这些事宜。关于开发一款调整好的 app 有一些指南,参见 Use Memory Efficiently

As much as possible, avoid displaying a splash screen or other startup experience. It’s best when users can begin using your app immediately.

尽可能避免显示启动界面或其他启动体验。最好用户能对 app 快速上手。

建议不要使用启动界面

Avoid asking people to supply setup information. Instead:

Focus on the needs of 80 percent of your users. When you do this, most people won’t have to supply any settings, because the app is already set up to behave the way they expect. If there is functionality that only a few users might want—or that most users might want only once—leave it out.

Get as much information as possible from other sources. If you can use any of the information people supply in built-in app or device settings, query the system for these values; don’t ask people to enter them again.

If you must ask for setup information, prompt people to enter it within your app. Then, store this information as soon as possible (potentially, in your app’s settings). This way, people aren’t forced to switch to Settings before they get the chance to enjoy your app. If people need to make changes to this information later, they can go to the app’s settings at any time.

不要让用户提供设置信息。应该:

聚焦于 80% 的用户的需求。这样做的话,大部分人不必提供任何设置,因为 app 已经按照他们的预期进行了设置。对那些极少数用户可能需要的功能或者大部分用户可能只需要一次的功能,就别理会了。

通过其他渠道获取尽可能多的信息。如果可以复用用户在内置 app 或设备设置里提供的信息,那就向系统查询这些数据,不要再让用户输入了。

如果必须询问设置信息,提示人们在 app 内输入。然后尽快存储这一信息(可能在 app 设置里)。这样用户在使用 app 前无需切换到设置界面。如果用户需要稍后修改这些信息,他们可以随时访问 app 的设置。

Delay a login requirement for as long as possible. It’s best when users can navigate through much of your app and use some of its functionality without logging in. For example, App Store doesn’t ask users to log in until they decide to buy something. Users often abandon apps that force them to log in before they can do anything useful.

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.

尽量延后登录需求。最好用户不登录就可以浏览 app 的大部分界面、使用部分功能。例如, App Store 不要求用户登录,除非他们决定购买东西。对那些强制要求登录的 app,用户通常什么都没做就放弃了。

如果用户必须登录,那就在登录界面显示一个简短、友好的解释,说明必须登录的理由以及对用户有何好处。

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.

提供新手引导前要仔细思考。(新手引导介绍了 app 的功能,并解释了如何完成常见任务。)在考虑新手引导之前,努力设计 app 使得所有功能和任务都可凭直觉使用、易于发现。新手引导不是好 app 设计的替代。如果你仍然感觉新手引导是必要的,那就遵循如下指南来创建一个简短、目标明确的引导。

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.

只给用户开始使用 app 必要的信息。一个好的新手引导展示给用户首先需要做的、或者简短演示大部分用户都感兴趣的一些功能。如果在用户使用 app 前提供太多信息,会让用户觉得有必要立即记住那些他们不需要的细节,而且显得 app 很难用。如果特殊任务需要额外帮助,那么在用户进行这些任务时再提供。

使用动画和交互来鼓励用户、帮助他们学会使用。只在确实必要时,加入少量文字;不要期待用户会读长篇大论。例如,当可以使用动画来为用户展示如何进行一个简单任务时,不要文字描述。为了引导用户完成一个更复杂的任务,可以增加临时覆盖视图来简短描述用户将要操作的每一步。尽可能避免显示 app 的屏幕截图,因为它们不具可交互性,用户也会感到迷惑。

让跳过新手引导很容易。当用户看过新手引导后,他们很可能不想再看一遍;其他用户也根本不想看。确保记住用户的选择,不要迫使他们每次打开 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.

In general, launch in the device’s current orientation. However, if your app runs in only one orientation, you should always launch in that orientation and let users rotate the device if necessary. For example, if a game or media-viewing app runs in landscape only, it’s appropriate to launch the app in landscape, even when the device is currently in portrait. This way, if people start the app while the device is in portrait, they know to rotate the device to landscape to view the content.

不要过早让用户给 app 打分。过早要求打分会让用户觉得很烦,从而减少收到的有用反馈总量。为了鼓励经过良好思考过的反馈,一定要给用户机会在被要求打分前对 app 形成一个完整认识。例如,可以等到用户已经访问过一些不同的界面或者完成了一些任务之后再要求评分。

通常,会按照设备当前的方向进行启动。然而,如果 app 只在某一个方向上运行,那就应该始终在该方向启动,如有必要,提醒用户旋转设备。例如,如果一个游戏或者可视多媒体只在横屏运行,那横屏时启动 app 比较合适,即使当前设备为竖屏。这样,如果用户在设备竖屏时启动 app,他们也知道要旋转设备到横屏下来查看内容。

只在横屏下运行的app

NOTE

It’s best when a landscape-only app supports both variants of landscape orientation—that is, with the Home button on the right or on the left. If the device is already in landscape, a landscape-only app should launch in that variant, unless there’s a very good reason not to. Otherwise, launch a landscape-only app in the variant with the Home button on the right. (To learn more about supporting different device orientations, see Adaptivity and Layout.)

注意:一个只能横屏显示的 app 最好能支持横屏方向的所有变种,即 Home 按钮在右侧和左侧两种情况。如果设备已经是横屏,那么只能横屏显示的 app 应该就在当前的变种下显示,除非有其他更好的理由不这样。否则,在 Home 按钮在右侧这一情况下运行只能横屏显示的 app。(为了更多了解支持不同设备方向的问题,详见 Adaptivity and Layout

Provide a launch file or image. iOS displays a launch image the moment your app starts—giving users the impression that your app is fast and giving your app enough time to load content. Learn how to create a launch file or image in Launch Images.

提供启动文件或图片。iOS 在 app 开始的一瞬间显示启动图片,给用户一种 app 启动很快的感觉,给 app 足够的时间来加载内容。在 Launch Images 学习如何创建启动文件或图片。

If possible, avoid requiring users to read a disclaimer or agree to an end-user license agreement before they can do anything else. Instead, you can let the App Store display your disclaimer or end-user license agreement (EULA) so that people can access it before they get your app. If you must provide these items within your app, be sure to integrate them in a way that harmonizes with your UI and balances business requirements with user experience needs.

When your app restarts, restore its state so users can continue where they left off. People shouldn’t have to remember the steps they took to reach their previous location in your app. To learn more about efficient ways to preserve and restore your app’s state, see Preserving Your App’s Visual Appearance Across Launches.

如有可能,不要要求用户在还没做任何事情之前就阅读一份免责声明或者同意一份终端用户许可证协议。开发者可以让 App Store 显示免责声明或者终端用户许可证协议,这样用户可以在获取 app 前访问它。如果必须在 app 中提供这些条目,那就确保以一种与 app UI 和谐的方式集成它们,并且平衡商业需求与用户体验需要。

当 app 重启后,要恢复它之前的状态,使得用户可以在他们离开的地方继续。人们不必记住他们之前在 app 操作的步骤和位置。关于高效保存恢复 app 状态的方法,可以参见Preserving Your App’s Visual Appearance Across Launches

4.2 随时准备停止(Always Be Prepared to Stop)

An iOS app never displays a Close or Quit option. People stop using an app when they switch to another app, return to the Home screen, or put their devices in sleep mode.

When people switch away from your app, iOS multitasking transitions it to the background and replaces its UI with the UI of the new app. To prepare for this situation, your app should:

Save user data as soon as possible and as often as reasonable. Do this because an app in the background can be told to exit or terminate at any time.

Save the current state when stopping at the finest level of detail possible. In this way, people don’t lose their context when they switch back to your app. For example, if your app displays scrolling data, save the current scroll position. You can learn more about efficient ways to preserve and restore your app’s state in Preserving Your App’s Visual Appearance Across Launches.

iOS app 从不显示关闭或退出选项。当人们切换到其他 app、返回主屏幕或让设备进入休眠模式时,就停止使用 app。

当人们切换离开 app 时,iOS 多任务切换它至后台,开始显示新 app 的交互。为这种情况做准备,需要:

按照合理的频率尽量保存用户数据。因为后台的 app 随时可以退出或终止。

停止时要保存当前状态,尽可能注意细节。这样,人们不会在切换回 app 时丢失他们的上下文。例如,如果 app 显示数据时有滚动条,那就保存当前滚动条的位置。了解高效保存和恢复 app 状态的方法,可以参见 Preserving Your App’s Visual Appearance Across Launches

Some apps may need to keep running in the background while users run another app in the foreground. For example, users might want to keep listening to the song that’s playing in one app while they’re using a different app to check their to-do list or play a game. Learn how to handle multitasking correctly and gracefully in Multitasking.

Never quit an iOS app programmatically. People tend to interpret this as a crash. If something prevents your app from functioning as intended, you need to tell users about the situation and explain what they can do about it. Here are two good ways to do this:

一些 app 可能需要在其他 app 在前台运行时保持自己在后台运行。例如,用户可能想要在听歌的同时使用另一个清单应用或者玩游戏。学习如何正确优雅地处理多任务可以参见 Multitasking

从程序的角度,永远不要退出 iOS app。人们倾向于把这理解为崩溃。如果有东西阻止了 app 正常运行,那就需要告知用户当前的情形,向他们解释他们应该做何种处理。这里有两个好方法:

If all app features are unavailable, display a screen that describes the situation and suggests a correction. The information gives feedback to users and reassures them that there’s nothing wrong with your app. It also puts users in control, letting them decide whether they want to take corrective action and continue using your app or switch to another app.

如果 app 的所有功能都不可用,那就显示一个界面来描述情形并给出正确建议。这一信息给予用户反馈,并使用户安心,了解到 app 并未出错。这也使用户掌控一切,让他们可以决定是否采取正确的行动来继续使用 app 还是切换到其他 app。

播客app

If only some app features are unavailable, display either a screen or an alert when people try to use the feature. Otherwise, people should be able to use the rest of the app. If you decide to use an alert, be sure to display it only when people try to access the feature that isn’t functioning.

如果 app 的一些功能不可用,那在人们试图使用不可用的功能时,要么显示一个界面、要么显示一个警告提示。否则,人们应该可以使用 app 的其他部分。如果决定使用警告提示,那要确保只在用户试图访问不可用的功能时才显示。

App Store

英文原文链接

后一篇:iOS 8人机交互指南(5)

小丫头的产品梦
Web note ad 1