跨平台设计的几种思路,哪个更好?

移动开发 Android
Android 早已不是一个弱势平台 (至少在国际市场上),而就算不完全按照 Android Design 来做应用,,也是能做出在 Android 上效果很好的 UI。

在网上, 我们时不时就会看见某些人别有用心的放出一些很有迷惑性的话题出现, 比如说下面这个:

@710Aziz: 有人把 Android 的界面风格往 iOS 上搬, 有人把 WP 的界面风格往 iOS 上搬, 有人把 iOS 的界面风格往 Android 上搬. 不同点——搬到 iOS 上的其它平台界面风格依然显示得很漂亮至少也是还不错, 搬到 Android 上的那些就大多很丑. 不同的平台, 先天基础和包容性不一样. 所以经常喜欢抨击应用在 Android 上照搬 iOS 风格的某人也多少应该想一想, 把 iOS 风格放到 Android 上显得很奇怪, Google 自己的设计和产品人员在这件事上要负多少责任——做一个平台, 尤其是弱势平台, 要考虑的不仅仅是”如果完全照我的规则来, 在我这里会好看”.

三大平台应用旧状(国内市场)

无论是在什么平台上, 应用质量都应该是呈金字塔结构分布的. iOS 由于其拥有更规范的市场, 更健全的防盗版机制以 及合理的分成模式, 最受开发者青睐,在 iOS 上应用质量可以说是成圆台状分布, 有大批优秀应用, 同时最劣质应用的数量也远远小于其他两个平台. Android 上则是典型的金字塔结构, 最优秀的应用只占非常少的一部分, 一般应用和垃圾应用则是依次递增. WP 平台比较悲剧, 几乎没有堪称精品的应用, 一般应用非常多, 垃圾应用更多, 是个矮圆台 + 小圆锥的结构.

而跨平台应用, 同样也有这么个分级. 通常情况下, 由于上段提过的原因, 跨平台应用的 iOS 版本都是最好的; 因为 Marketplace 有着颇为严格的准入门槛, 所以 Windows Phone 应用的质量其次; Play Store 准入门槛低, 难以获得收入, 用户质量比起前两者又更加参差不齐, 注定了开发者很难主动的把 Android 平台列为重点开发对象, 通常是随便的应付了事.

但是自从 Android 4.1 出现之后, 状况有所改变了.

跨平台开发的几个典型思路

  1. 生搬硬套, 直接把某个平台 (一般是 iOS) 的界面照搬到其他平台. 效果最垃圾. 我曾经在 WP7 上看到过一个拍照滤镜应用, 界面彻头彻尾就是 iOS 5 相机的界面, 可谓丑陋之极.
  2. 继承主题, 应用主体基本按照某一平台 (一般是 iOS), 针对不同平台特性略作微调. 这套方案在 WP 上同样行不通. 但是在 Android 上, 可以起到不错的效果.
  3. 照抄原生, 完全照搬不同平台的原生样式. 成本最低, 效果也还不错, 但后果是有可能完全丧失应用的特征.
  4. 分别适配, 针对不同平台的特性进行适配, 同时保留属于自己应用的一些特征. 效果最好, 但是代价也略高.
  5. 独创风格, 做出属于应用自己的, 不和任何平台相冲突的应用风格. 几乎不可能(除了游戏), 至少在 WP 上台困难.

由于 Windows Marketplace 审核较严, 所以在 Windows Phone 上出现的跨平台应用基本看不到生搬硬套和继承主题的例子. 反而是照抄原生的应用在 Windows Phone 上比比皆是. 而 Metro UI 的个性又过于强烈, 在另两个平台上也许还算很和谐的设计在 Windows Phone 上往往也会很别扭.

而在 Android 上, 上面五种例子都有典型的对应应用.

  1. 生搬硬套的典型就是某些国内知名互联网企业的应用了, 这些应用我想大家都很熟悉, 他们一方面照搬 iOS 的 UI 和交互逻辑, 一方面对 Android 的平台特性置若罔闻, 造成的直接后果就是体验割裂, 功能缺失, 操作生硬.
  2. 继承主题这个方法就比较常见了, 在设计优秀的应用上效果算是挺好的, 比如上图中的 Instagram, 这套界面虽然完全不像是原生 Android 系统 (而且我们也完全可以把它改得和原生系统一样), 也不会让用户体验直接分裂. 并且, Instagram 针对 Android 的特色进行了很多相应的优化, 比如更加智能的通知, 可以从不同的地方 (比如文件管理器和 Dropbox) 选择照片 (这点在 iOS 上是做不到的), 以及便捷的分享功能 (这也同样是 iOS 做不到的).
  3. 完全照搬原生的应用则比较罕见,一般是系统功能替代类的应用, 比如拨号, 短信, 邮件等应用.
  4. 诸如 Vine, Pocket, Evernote 这样的针对不同平台开发不同风格应用的优秀范例倒是不断在变多. 以 Evernote 为例, iOS 版本和 Android 版本的 Evernote 的文件夹界面无论是外观还是操作逻辑都几乎是截然不同的.
  5. 独创风格的应用最为罕见, 然而跨平台效果也是最好的. 目前我能看到的唯一一个例子就是 Flipboard. Flipboard 的操作逻辑和 UI 设计, 放在 iOS, Android 和 Windows Phone 上都是非常和谐的. 而 Flipboard 也在今年的 Build 大会上宣布登录 Windows Phone, 让我们拭目以待吧.

回到最开始那段话和图片. 布卡漫画的 Android 版本实际上在导航方式方面模仿了 iOS (底部底部切换分类), UI 方面也选择了比较中性的设计 (没有明显的高光与很强的拟物倾向), 如果要归类应该归为继承主题类, 所以在 iOS 上依然会非常和谐. 而纯 Holo 风格的应用放在 iOS 上就会显得略违和了, 比如 Android 的拨号界面等. Windows Phone 界面被搬上 iOS, 其实大多也仅仅是界面类似 Windows Phone (我们可以说那是 Metro Design——龚叔也说过, 最好的 Metro Design Apps 都在 iOS 上而不是 Windows Phone), 在操作逻辑上依然是 iOS 的那一套.

更进一步说, 新一代的 Google 应用也成功的将一套 UI 在不同平台上和谐的呈现了. 譬如 Maps 的 UI, 先是在 iOS 上采用, 而后搬到了 Android 上, 但是无论在 iOS 还是在 Android 上, 这套 UI 都是和谐的, 并不会与平台存在视觉或交互上的冲突或分裂. 而在 Android 上也有一系列使用 Metro UI 的应用, 其中最著名的当属 ZPlayer——一款完全模仿 Zune 的音乐播放器. 类似的例子还有, 比如 Flipboard. 以后也不断会有这样的例子出现, 因为 iOS 7 的新改变在 UI 逻辑上无疑是拉近了三大平台的距离. 

那么看完了上面的分析, 你依然认为”不同的平台, 先天基础和包容性不一样”这个论断是合理的么? “做一个平台, 尤其是弱势平台, 要考虑的不仅仅是’如果完全照我的规则来, 在我这里会好看’.”这句话, 你也会发现, Android 早已不是一个弱势平台 (至少在国际市场上), 而就算不完全按照 Android Design 来做应用, 也是能做出在 Android 上效果很好的 UI.

系统长什么样其实并不重要, 借口也总是有的. 问题在于开发者, 还有设计师.

责任编辑:徐川 来源: 极客公园
相关推荐

2015-05-13 10:09:39

移动跨平台开发

2010-09-25 13:47:14

Java跨平台

2020-10-12 14:40:28

VS Code代码平台

2009-09-07 13:42:33

发送邮件动态内容

2015-05-18 16:53:36

Android

2022-04-20 10:15:56

SaaS模块化客户

2021-04-12 08:01:21

GridFlexbox网格

2018-12-11 12:38:23

UbuntuMint发行版

2016-03-25 09:57:09

统一监控报警平台运维

2011-07-29 09:33:21

iPhone 设计

2017-03-02 14:52:46

2021-05-31 08:57:31

Xcode与Andro

2021-06-28 11:17:14

CoutPrintf接口

2017-03-22 09:25:26

MySQLPostgreSQL对比

2016-12-30 14:47:21

设计RESTfulAPI

2022-10-28 15:51:24

JavaScript开发Node.js

2023-05-06 15:32:04

2019-07-27 09:40:56

MySQLPG数据库

2022-09-02 08:28:44

AWS多云云提供商

2021-05-27 05:22:28

前端引擎平台
点赞
收藏

51CTO技术栈公众号