做壁纸 App 的想法诞生于一个偶然(好像大多都是偶然),当时 Enframe 审核受挫,短时间内也很难找到有效的解决办法,正巧那天我在 ProductHunt 上看到 Unsplash 推出了官方 API,我想这是个机会。

一方面,我个人非常喜欢 Unsplash,它让我第一次接触到如此高质量且免费的无版权图片资源,在工作上帮了我很大的忙。之前我也写过一篇介绍 Unsplash 的文章,有兴趣可以看看。

另一方面,我也喜欢不定期给手机换壁纸,用过大多数优质的壁纸 App,但真正喜欢并留在手机里的 App 不多,从最早的每日壁纸杂志到 Kuvva 再到 SCREENAR7 最后到 WLPPR,但这些 App 中,我喜欢并适合用做壁纸的非常有限。

所以,我找上开发的同事一起做一个 iOS 壁纸 App,初步的想法很简单,使用 Unsplash 图片就好,但之后一边做,我也一边有了清晰的思路,这些要从我个人对手机壁纸的理解说起。

一定要适合

长期的使用经历告诉我,很多壁纸 App 提供的壁纸,其实都不适合作为壁纸。它们很多都是非常好看的图片,但不是好看的壁纸。比如 Kuvva 上有非常多好看的插画,但这些插画颜色丰富、细节太多,作为主屏壁纸被各种图标覆盖在上面,那视觉效果简直惨不忍睹。

这种状况主要出现在 iOS 7 风格大改之后。iOS 7 之前的拟物风格很好选壁纸,基本上只要图本身好看,设为壁纸后也会好看,比如我当年最喜欢的一张纹理壁纸,虽然它有非常多的细节,但放在主屏的效果也挺好:

Picture.jpeg

而到了 iOS 7 之后,如果你想尝试设置这类图片做为壁纸,绝对要眼瞎。因为 iOS 7 图标不再有浓厚的阴影,壁纸和图标的层次感不再那么分明,系统整体配色也更加鲜艳明亮,本身就多彩亮眼的图标,再配张多彩亮眼的壁纸,看起来就是搅成了一团糊。

针对这一变化,当时 iOS 7 还出现了一批专门快速让图片高斯模糊(毛玻璃化)的 App,来满足设置壁纸的新要求。做得比较好的有:BlurBlurify

此外,当时还出现了一些能让你自行制作壁纸的工具型 App,其中我用过 Gradify 相当长一段时间(下图),通过拖动三个按钮,可以对图片进行高斯模糊、覆盖添加纹理或渐变色效果的处理,并能调整透明度,做出的效果我非常满意,但因为纹理可选择不多,后来把喜欢的用个遍之后弃用了。不过,它让我对 iOS 壁纸的选择有了进一步的认识。

JPEG 图像-F32E36E0F8DB-1.jpeg

再之后我进入了一段不太换壁纸的时期,只因为合适的壁纸太少。这期间,我用了一些 AR7 的壁纸,但更多是网上零碎找到的。这里推荐一下 iDownloadblog 的每周壁纸,他们选择的壁纸大多都会遵循「适合」原则,图片尽可能简单,设为壁纸也有不错的效果,我从那里看上过好些不错的壁纸。

这些经历让我对一款心目中合格的壁纸 App 有了一个基本需求:

壁纸图片应是适合系统风格的。

不一定要那么多选择

不少人衡量壁纸 App 好坏的一个标准都是,里面有多少数量的图片资源。那些打着类似「上万高清图片」「每日大量更新」旗号的壁纸 App 似乎对他们来说是主要一项吸引力。

但是,那么多选择真的有必要吗?好的一面是,大量图片意味着用户能有更多选择,可能更有机会从中找到喜欢的壁纸,也能吸引更广泛的用户群;不好的一面则是,图片一多质量就会参差不齐(这几乎是必然的)。在我看来,质量下滑就意味着一款壁纸 App 的死亡,无论如何,我个人都无法接受图片质量不行的壁纸 App。

那么,既然质量如此重要,如何避免它变坏呢?

一个方法是由人工来严格筛选

虽然人工智能 AlphaGo 在围棋上战胜了人类,但对于我们所处的环境下,所谓的智能、算法都相当落后,这是我一直不喜欢各类音乐电台和个性化阅读 App 的重要原因。在机器智能变得真正智能之前,我更信赖「人工手动」这种原始、主观的方式,虽说在效率上可能不大如意,但只要这个人还算靠谱,筛选出来的东西也就不会太差。我自认有一些审美素养,本身也一直做「编辑」的工作,所以乐意尝试做做「壁纸编辑」。

另一个方法则是有限提供

首先,较少的数量和低频率的更新才可能有更好的质量,这是一个保守的做法,但这是对于我选择「人工筛选」这种方式的一个必然结果。

其次,对于用户来说,壁纸数量不够多,真的是一个大问题吗?我想不是。「换壁纸」这种行为本身就是一件不会经常做的事情,也许你会一时兴起三天两头换几张壁纸,但我相信少有人长期有这样的习惯。因此,没有大量壁纸,对用户实际使用其实不会有多大影响。只需要保持一个不会远大于大多用户更换壁纸周期的更新频率,足矣(目前 Cuto 是一周左右更新一次,每次 6 ~ 10 张)。

总结下来,我对壁纸 App 的另一个需求是:

App 里提供的壁纸少而精就好。

壁纸 App 到底算「娱乐」还是「工具」?

这是我在上架 Cuto 前选择 App Store 分类时遇到的一个问题。

一款 App 提供了精美好看的图片给用户,让用户在赏心悦目之余,能将自己喜欢的图片保存下来,设为壁纸,这就是壁纸 App 的一套基本思路。按这样来看,壁纸 App 更倾向于「娱乐」类,它做的事情主要是:提供美图让人欣赏和保存

但我理想的壁纸 App 不应该只是这样。虽然我对壁纸的筛选有严格的要求,但我认为满足不同人的「个性化」也是重要的一部分。我不希望用户打开 Cuto 只是看看图,现在已经有太多太多可以看图的地方了,既然是一款壁纸 App,它要做的事情应该是:让用户能获得一张喜欢的壁纸

系统的风格、不同的设备、不同的图标摆放、不同人的喜好,这些因素都会影响每个用户之间对于同一张壁纸的不同需求,自定义(或者说个性化)是满足用户这些需求,从而让他们获得「喜欢的壁纸」的方式。上文提到的 Gradify 就是我理想壁纸 App 的形态,它是一个提供了多种自定义功能的壁纸制作工具,我偏爱这类工具,希望 Cuto 也是这个方向。

所以,我理想的壁纸 App 应该是:

需要有一定工具属性,最好可以满足不同人的个性化需求。

自行裁剪

Cuto 的「自裁剪」功能便是对工具属性的一种体现,虽然这在起初是被动的选择。

由于使用 Unsplash 的图片,如何让这些 3:2 的原图变为适合用在手机上的壁纸,是我们当时做 Cuto 的时候遇到的一个问题。虽然 Unsplash 提供了自动裁剪的 API,但只能固定截取图片正中间的一部分,假如有些图片最好看的部分不是中间部位,那这个裁剪就没了意义。而如果都由我来一张张裁剪适合的部分,一是手工成本太大,二是很难抉择,一张好看的图很可能可以裁剪出多个好看的部分。

所以,我决定将这一步交给用户自主决定。

但我不想让一个壁纸 App 有什么很高的自由度,那会无端增加学习成本和其他的麻烦(比如若原图尺寸不够大,缩放后裁剪出的图画质就会差)。于是,在裁剪功能的设计上,我特地限制了只能通过左右滑动选区,而不是像通常的裁剪工具那样自由缩放和框选。

一个好的工具应该是迅速帮助用户解决需求,然后迅速离开。

虽然我希望 Cuto 是一款壁纸制作工具,但我也希望它是足够简单易用的。

按设备裁剪

让用户自行裁剪出不同尺寸的壁纸,这也是「制作壁纸」的一部分。

Cuto 1.0 推出后,收到最多的反馈就是「希望提供原图下载」。这是我们起初忽视的一点,由于我最初对 Cuto 的定位只是为 iPhone 提供壁纸,但没想到很多人会很在意想要存下原图,用在其他设备上。

在第一个版本里,我们只是做了「按不同 iPhone 裁剪」裁剪的功能,但其实这里我犯了蠢,这个功能几乎没有任何实际意义。所以,在最新的 1.1 版本里,我们特地对这个功能做了比较大的改进,变成了「按不同设备裁剪」,可以让你保存不同比例尺寸的壁纸, iPhone、iPad、Apple Watch,当然也包括了原图。

值得一提的是,在设计 iPad 比例裁剪的选框时发现,iPad 有「在横屏下设置壁纸」和「在竖屏下设置壁纸」两种状态,为了同时兼容,我参考了 iDownloadblog 提供的 iPad 壁纸,将 iPad 比例裁剪设为了 1:1 的正方形。

桌面预览

最后,还是想提一下这个「坑」。

因为几乎在所有壁纸 App 里都会看到预览功能,一直以来我都觉得预览是壁纸 App 的标配,直到自己做了之后才发现,这又是苹果的一个坑——Cuto 因预览功能被拒了三次,理由是不能出现任何与系统桌面相关的界面,即使这个预览桌面上全部都是第三方 App。

这着实对我造成了打击,三次提交被拒都是因为我不服气「一个壁纸 App 里怎么能没有预览」,我分别尝试对桌面预览界面作了不同程度的修改,并为此用心写了长篇的上诉理由:

Cuto 是一款壁纸应用,App 的目的是为用户提供可用于设为桌面或锁屏的壁纸图片。而为了让用户能够更方便直观的选择喜欢且适合的壁纸图片,在 App 内提供「快速预览」效果,以便用户能直接在 App 内预先看到壁纸在主屏或锁屏上的模拟效果,这是一个符合用户需求的功能,而且这在壁纸类 App 中也是比较通行的一个基础功能。

首先,基于这样的用户需求,那么这个「预览」效果必然会与 iOS 系统的主屏和壁纸界面(interface)相似——因为用户需要看到尽可能贴近实际设为桌面后的预览效果,才能做出判断是否喜欢某一张壁纸。

其次,这个效果只是单纯给用户「看」的,它没有任何实质的类似 iOS 系统的操作行为(behavior)。这里唯一的操作行为是我们做的一个小细节:用户能够通过在屏幕任意位置左右滑动以选取图片的不同区域,来快速决定是某张图片的左边区域,还是右边/中央区域更适合设为壁纸。而配合「预览」效果,用户能够以「所见即所得」的方式直观看到他想要的结果,我们认为这也是 Cuto 不同于其他壁纸 App 的一个特色所在。

另外,Cuto 的「预览」界面不是全屏的,底部常驻的 Tab 也会让用户时刻知晓自己是身处在一款第三方 App 内,而非 iOS 系统界面中。

对于这样与系统界面相似的「预览」效果,其实并不会令用户产生困惑(causing user confusion),反而它是一个能便于用户能更好地选择心仪壁纸的重要功能,它能够显著改善用户在选择壁纸时的体验,为用户节省很多挑选、尝试壁纸的时间和流量。我们引入「预览」功能就是从用户体验的角度出发的,从 TestFlight 测试阶段的用户反馈来看,这个功能亦获得了内测用户的一致好评。

所以,我们真诚期望 Apple 审核团队重新考虑关于 Cuto「预览」功能的审核决定。

然而,还是我太天真,再次被拒。审核拖了一个多月之后,由于不想再浪费时间,无奈之下才决定先去掉预览功能。至此,我也算是再次领教了苹果审核的「厉害」。

好在现在已经有了解决办法,包含桌面预览功能的 1.1.1 版本已经提交审核(原本想随 1.1 一起上,但出了点意外)。

最后的话

做 Cuto 原本只是源于一个非常简单的想法,原本也认为这不过是一个非常简单的过程,但真正做了之后才发现做一款 App 的不易。

过去我只是喜欢各种 App,喜欢 App 的开发者,现在当自己也经历了开发者们所经历的过程后,对于 App 的台前幕后都有了更多更深的理解,这不论是对于我接下来评测 App、和开发者打交道,还是做少数派客户端来说,都是难得且宝贵的。

这里不得不感谢老麦的支持,才得以有这样一款实验性的少数派周边 App 诞生。

最后,提醒各位现在可以去 App Store 更新 Cuto 1.1 了,相比 1.0,新版本完善了很多。另外,也欢迎还未体验过的朋友去下载试试,没广告,不要钱。如果觉得不错,可以在 App 里请我们「喝饮料」,如果有问题,也欢迎通过邮件给我们反馈。