转载

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

本篇目录

3.5 研究型应用程序(Research Apps)

3.6 应用扩展(App Extensions)

  • 今天部件(Today Widgets)

  • 分享和动作扩展(Share and Action Extensions)

  • 图片编辑扩展(Photo Editing Extensions)

  • 文档提供者扩展(Document Provider Extensions)

  • 自定义输入法(Custom Keyboards)

相关阅读:

iOS 9人机界面指南(二):设计策略

iOS 9人机界面指南:iOS 技术 (HomeKit、多任务、通知、社交媒体以及iCloud)

3.5 研究型应用程序(Research Apps)

研究型应用程序可以让苹果用户充分利用iOS移动设备的便利性,参与到各种研究性学习中来。通过调用开源代码ResearchKit,使用预设的几种界面视图和转场动画,可以很轻易为你的研究和参与者自定义一个美观易用的研究型应用程序,这些资源都可以在苹果的开源代码ResearchKit项目中调用。要想了解如何使用ResearchKit来为你的研究开发一个研究型应用程序,请查阅 researchkit.org .

重要: 这些规范准则仅供参考之用,并不构成任何法律意见。对于与你的研究型应用程序发展以及任何法律适用的相关建议,你应该向律师咨询。

通常情况下,一个研究型应用程序是由ResearchKit定制化的界面视图以及应用程序本身具体设定的界面视图组成,可归纳为三种主要的体验:

  • 参与者的就位培训(Onboarding)

  • 研究性调查(Study-specific investigation)

  • 管理条目信息(Management items)

设计你的研究型应用程序时务必要遵循以下每个部分的规范准则,将有助于你的用户参与者感到舒服和保持参与感。

3.5.1 参与者的就位培训(Onboarding)

就位培训的体验包含了一系列向潜在参与者介绍研究内容以及征询他们同意的环节。完成这些以后,参与者通常不会再重新访问这些就位培训的内容环节:

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

你应该按如图所示的这个顺序呈现就位培训的各个体验环节,也就是按介绍指引、适任、知情同意,以及授权访问数据。

创建一个具有号召性用语的介绍指引 。指引环节应该帮助人们了解更多关于你的研究以及告诉他们如何成为一名参与者。指引环节最好也能向那些现有的参与者提供快捷登录的入口以便继续正在进行的研究。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

尽快确认招募的用户是否合格。 适任环节呈现在指引环节之后、知情同意环节之前(如果参与者并不适合该研究则没有必要让其查看知情同意环节)。请确认所呈现的适任资质要求对于你的研究来说是必要的。请使用简单、直白的语言描述这些要求,并让用户可以很容易就输入相关信息。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

在得到参与者的同意之前,确保他们已充分了解你的研究内容。 ResearchKit有助于让知情同意流程显得简洁、友好,同时还允许将你同意的任何法律规定或由机构审查委员会和伦理审查委员会所设定的规定纳入其中。(如果你的应用程序涉及到进行人体生物学相关的研究,必须确保你的应用程序符合现有的苹果应用商店规范指南,并获得参与者的许可。)通常情况下,知情同意环节包含了:

  • 说明这项研究是如何工作的

  • 确保参与者了解研究内容以及各自的责任

  • 获得参与者的许可

将冗长的同意书分解成易理解消化的小节。 每个小节可以只覆盖研究内容的一个方面,比如数据采集、数据应用、潜在好处、可能的风险、时间承诺、如何撤出等等。每个小节请使用简洁、直白的语言来说明一个高度概括的内容。如果有必要,提供一个查看详情的按钮便于参与者了解该小节更详细的解释。应该让他们在同意参与之前,就查看完全部知情同意内容。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

通过一个小测验来测试参与者的理解情况是有意义的。 在获得参与者允许的情况下,你可以选择向每个参与者询问相同的问题。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

你的研究必须获得参与者的同意,如果合适,还可以收集一些联系人信息。 参与者同意参与研究后,他们需要提供个人签名以及联系方式,最后会收到一个确认对话框。对于这些信息记录,大多数的研究型应用程序会向参与者电邮一份PDF格式的同意书。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

参与者需要对这个确认自愿参与研究的告警对话框给予响应

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

参与者可以提供他们的个人签名在知情同意流程中

如果你需要访问参与者的设备或数据必须得到他们的许可。 必须解释清楚你的研究型应用程序为什么需要访问他们的位置信息、健康应用程序或其他数据,并且确保避免向参与者索要对你研究并非至关重要的数据。同样地,如果你需要向参与者发送通知提醒也要获得参与者的许可。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

让参与者准备授权访问数据,比如健康应用程序的数据

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

让参与者自己选择他们愿意与你共享的数据

3.5.2 具体研究的调查(Study-Specific Investigation)

为了从参加者获得数据输入,你的研究可能会使用情况调查、活动任务,或两者的组合。根据你的研究的体系结构,参与者可能会在每个环节多次或仅需完成一次交互即可。

问卷调查的设计应该能让参与者专注参与其中。 ResearchKit可以很容易就呈现多种答案类型的调查问题,比如对错、多选、日期和时间、比例计算,以及开放式文本填写。当你使用ResearchKit的界面视图来创建一项调查,请遵循以下准则,来保证好的用户体验:

  • 告诉参与者总共有多少道问题,以及完成调查预计需要花费的时间

  • 每屏只呈现一道问题

  • 显示给参与者当前调查的进度

  • 调查应该尽可能简短。几个简短的调查往往好于一个冗长的调查

  • 对于需要额外解释的问题,问题描述请用标准字体大小,然后解释文字用略小的字体大小

  • 调查结束时要告知参与者

ResearchKit提供了许多用于调查环节的可自定义界面视图。这里有一些样例。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

使得活动任务容易理解。 活动任务需要参与者参与到一次活动中来,比如对着麦克风语音、手指在屏幕上完成点击、行走散步,以及执行一次记忆力测试。请按照以下几点准则来鼓励参与者执行活动任务,并给与他们成功的绝佳机会:

  • 请用简洁易懂的语言来描述如何执行本次任务。

  • 如果任务必须在特定的时间或特定情况下进行,请务必明示。

  • 确保参与者可以分辨出任务何时结束。

以下是ResearchKit所支持的两个活动任务样例。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions) iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

3.5.3 管理条目信息(Management Items)

ResearchKit提供了个人档案的界面视图来让参与者可以管理他们的个人信息。此外,创建一个可以激励用户并能让他们追踪他们在研究中的进度的界面视图是个不错的选择。在大多数情况下,参加者应该能够随时访问这两个模块。

使用个人档案来帮助参与者管理个人信息和与你研究相关的数据。 个人档案界面视图允许参与者在研究进程期间可以编辑相应数据,比如体重或睡眠习惯,并且可以提醒他们即将到来的活动任务。你同样可以在个人档案中给予参与者一种简单的方式离开该研究、查看知情同意书,以及查看该应用程序的隐私政策。 [

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

使用仪表盘概览视图来激励参与者,并呈现进度。一个概览视图可以让你与参与者对信息一览无余并鼓励他们继续参与。如果你的研究内容合适的话,你可以使用该概览视图给予参与者丰富的反馈,比如每日进度、每周评估、具体活动的结果,以及同其他参与者的汇总结果进行对比。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

3.6 应用扩展(App Extensions)

应用扩展可以延伸应用的使用范围。当用户使用其他应用时,应用扩展使得用户仍能使用你应用的核心功能。举个例子,当人们在Safari中浏览网页时,他们可以使用你的分享扩展来发送一张图片或一篇文章到你的社交网站上。或者当使用Photos(照片)应用时,人们可能会使用你的图片编辑扩展来为一张图片加上一个滤镜效果。(在这些场景中,Safari和照片应用承载用户使用扩展的场景,因而被称为宿主应用(host apps)。)

你需要提交包含应用扩展的完整iOS应用到App Store(包含扩展的应用被称为容器应用(containing app))。在你的容器应用中启用扩展之后,人们就可以在使用其他应用时,使用扩展来执行快速任务。例如,在邮件中浏览某个商品时,人们可以不用离开邮件应用就使用你的动作扩展来把商品添加到购物清单中。 表 22-1 列举了可以多个创建的iOS应用扩展类型。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

以下指南适用于所有类型的应用扩展,针对特定类型应用扩展的指南请参阅后续章节。(如果想了解如何开发、调试和发布一个扩展,请参阅 App Extension Programming Guide .)

确保是单任务。 应用扩展并不是应用的精简版,它帮助用户在有全局目标的上下文中完成狭义范围内的有限任务。例如,动作扩展可以为用户提供一种不同的方式来查看当前内容。

保证用户的交互是有限和流畅的。 好的应用扩展应该只需几步点击就可以帮助人们完成任务,这样他们就能尽快回到之前的场景中。例如,分享扩展只需一次点击即可完成一张图片的分享。

将容器应用及其应用扩展的名称保持一致。 一个容器应用中如果有多个扩展,需要使用不同的名称,你需要确保用户能够理解你的扩展和应用之间的关系。人们会在很多不同的情况下遇到扩展,如果他们当下没有认出来,那么他们就未必会信任这些扩展。

大部分情况下,复用容器应用的图标。 显示用户熟悉的图标是获得用户信任的另一种方式。请注意,对于动作扩展来说,你应该使用单色版本的容器应用图标( 详见分享和动作扩展 )。

重要: 和设计图标和图形一样,不要重复使用iOS的图标和图片,不要为苹果的产品和设计再设计一套图片。

避免在扩展上显示模态视图。很多扩展默认以模态视图来显示,所以应避免再叠加模态视图。尽管有时候用户可能会在扩展上遇到警告框,但是在设计扩展的流程时,应避免出现模态视图。

3.6.1 今天部件(Today Widgets)

人们会在通知中心的今天区域中查看今天部件(Today widgets)。因为人们会设置今天区域以显示他们最关注的信息,所以在此进行设计可以有效帮助你的部件在这些用户最重要的信息中占据一席之地。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

设计与通知中心风格一致的外观。 当使用通知中心的默认边距和背景时,你的今天部件就会给用户以统一的体验。为获得最佳的结果,你应该重点关注你的内容而不是背景或者其他的,尤其应该避免绘制一片纯色背景。

注意: iOS会自动在自定义的部件内容上方显示应用的图标和标题(图标会显示在标题前面的空白处)。

将部件内容与标题对齐 。当你的部件内容与标题对齐时,人们就可以很简单地浏览今天视图中他们想要的部件。遵守今天视图中的边距规范,并将内容约束在如图的部件内容区内。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

一般情况下,使用白色的系统字体来显示文本。 在通知中心默认背景下白色文字会看起来较好。对于二级文本,可以使用系统提供的vibrant外观样式(查看 notificationCenterVibrancyEffect 了解更多)。

提供通知中心式的体验。 人们访问通知中心来获取简要的更新或者执行一个非常简单的任务,所以今天部件最好只显示适量的信息和进行有限的互动,特别是:

  • 避免用户在部件中需要滚动或纵向移动来查看全部的信息。部件可以通过纵向扩展来显示更多的信息,但若部件的高度超过通知中心的高度就不是一种好的体验了,因为这样会干扰其他部件的查看

  • 避免使用横向扫动或拖曳,因为这会干扰在通知中心进行导航

  • 尽可能使用户只需一步操作就完成任务或打开你的应用(注意,在今天部件中键盘是不可用的)

  • 优化性能以便人们可以即刻获得有用的信息。可以考虑在本地缓存信息,以便当有更新时就可显示最近信息。人们只希望在今天视图中花很少的时间,如果部件使用内存不当,iOS就可能会终止它

在适当情况下,让人们点击你的今天部件来打开你的应用 。因为今天部件提供了专一的体验,所以就能有效引导人们去到你的应用以获取更多信息或功能。最好不要显示“打开应用”按钮,而是应该让你的整个今天部件都可被点击来打开应用。你也可以让用户点击部件中的UI对象,以打开你的应用并跳转到关于此UI对象的视图中。举个例子,日历部件显示了今天的事件,如果用户想要获得某个事件的更多信息,他们可以点击部件中的事件来打开日历应用进行查看。

注意: 虽然从部件打开应用的方式对用户来说还不错,但继续在部件中提供有用且及时的信息依然是很重要的。人们可不一定会欣赏一个功能只是打开应用的今天部件。

如果可能,在今天部件中让人们知道他们需要登录来获取有用的信息。如果你的今天不见需要人们登录查看信息,展示一个信息去鼓励他们登录和解释什么样的内容将会被呈现。例如,如果你的时间部件即将到来的预约是用户登录后展现的,你可能需要让用户“登录我的应用去查看即将到来的预约”。

不要制作一个今天不见需要打开除了你自己应用外的应用。一个模拟iOS主屏的行为的时间部件不会为你的用户提供有用的功能。

3.6.2 分享和动作扩展(Share and Action Extensions)

人们通过点击应用中的动作按钮(Action button)来使用分享和动作扩展。在通过动作按钮显示的动作视图控制器(activity view controller)中,动作扩展被列在底部,分享扩展被列在动作扩展之上。人们可以使用更多(More)按钮来管理显示在动作视图控制器中的分享和动作扩展。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

分享或动作扩展通常被认为是在当前用户场景下用来输入内容之用。例如,当在Safari中阅读一篇文章时,用户可能会点击动作按钮并使用一个分享扩展来发送这篇文章到分享网站上,也可能会使用一个动作扩展来查看这篇文章的翻译。

注意: 在动作视图控制器中,iOS只会显示支持当前内容类型的动作扩展。例如,当用户当前内容是视频时,iOS就不会显示支持文本的动作扩展。

尽可能在分享扩展中使用系统提供的UI。 系统所提供的撰写视图控制器 (compose view controller) 提供给用户一种一致的体验,并能自动支持一些常用任务,例如预览和确认标准项,同步内容,查看动画,以及完成一封邮件。欲知更多关于使用系统提供的撰写视图控制器,请参见 App Extension Programming Guide 中的 Share .

如果上传需要一定时间,那就应考虑在分享扩展的容器应用中显示上传进度。 无论分享的文件有多大,人们都期待在点击扩展中的发送或分享按钮后,能立即返回他们之前的场景。你需要让进度状态随时更新,但是人们不想每次上传完毕后都收到通知,并且也无法自动重启扩展。在这种场景下,在容器应用中显示上传进度是一种解决方案,这样容器应用就可以在后台处理任务,并在遇到问题时发送通知。

动作扩展使用单色的应用图标。( 不同的是,分享扩展则应该使用其容器应用的彩色应用图标。) 要为动作扩展设计图标时,你可能需要从创建一个应用图标的模版开始着手。如有需要,可以专注图标所特有的元素来进行简化设计。

如果你在容器应用中提供了多个动作扩展,那么最好为他们设计一套图标,且确保这套图标中的每一个看起来都与容器应用的图标是有关联的。

3.6.3 图片编辑扩展(Photo Editing Extensions)

当人们在照片(Photos)中查看图片或视频时,可以使用图片编辑扩展。一般来说,图片编辑扩展能帮助用户筛选图片或进行一些其他的图片或视频编辑。在用户确认之后,编辑后的内容就会出现在照片应用中。

照片应用提供了一个模态视图来显示图片编辑扩展的自定义UI。当用户在确认对图片或视频的编辑时选择了取消(你必须要在代码上保证存在这个行为),照片应用还可以显示一个确认视图。

避免在图片编辑扩展中使用导航栏。 如图所示,承载扩展的模态视图已经包含了导航栏,若再增加另一个导航栏,既会占据更多你的界面空间,还会使用户产生困扰。(照片应用默认会以全屏高度来显示你的视图,所以你的内容会出现在内建的导航栏之下。)

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

如果可以,让用户能够预览编辑结果。 尽可能让用户在关闭扩展返回照片应用之前看到他们编辑的成果。

3.6.4 文档提供者扩展(Document Provider Extensions)

文档提供者扩展帮助人们在其他各种应用中查阅你的应用所管理的文档。在宿主应用(host app)中,文档采集视图控制器(document picker view controller)会显示你的扩展所提供的UI(想要了解更多有关文档采集视图控制器的内容,请查阅 UIDocumentPickerViewController Class Reference ).

注意: 文档提供者扩展由两个不同的部分组成:文档采集视图控制器扩展和文件提供者扩展。文档采集视图控制器扩展包括了你的自定义UI,文件提供者扩展实现对文件的访问。为了简单起见,本节所使用的术语文档提供者扩展(Document Provider extension)是为了表述扩展中文档采集视图控制器部分的UI和体验。

避免在文档提供者扩展中使用导航栏。 iOS会显示扩展的自定义UI,而自定义UI又包含在文档采集视图控制器中基于导航栏的界面之中。所以,在内建导航栏之下再显示第二个导航栏会使用户感到困惑,并且还会占据原本你的内容区域。(文档采集视图控制器默认会以全屏高度来显示你的视图,所以你的内容会出现在内建的导航栏之下。)

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

3.6.5 自定义输入法(Custom Keyboards)

人们在整个系统中使用带有自定义输入法的输入法扩展来替换iOS的自带输入法。在启用输入法扩展之后,除了受保护的文本区域(例如密码输入区)和手机键盘区(例如联系人中的电话号码区)外,当人们点击任何文本输入区域后就能使用自定义输入法。

为用户提供明显的方式来切换输入法。人们对于iOS的输入法切换按钮很熟悉,他们会期望在你的输入法中也有类似的体验。

iOS 9人机界面指南:iOS 技术 (Research Apps和App Extensions)

如果可能,在你的容器应用中包括一个教程。如果必要,使用你的自定义键盘的容器应用去给人们讲解如何启用和使用你的键盘。不要把这个信息直接放在键盘本身,因为它可能让人们尝试使用这个键盘时感到困惑。

正文到此结束
Loading...