6个错误将杀死你的App
没有开发者或者设计师会故意破坏应用的设计。所有的应用程序创建者都对自己的应用寄予美好的愿望,但是很多错误是在他们无意识的状态下破坏app的设计。以下是应用开发者和设计者经常犯的几个错误,不过这些错误是很容易避免的。
糟糕的app icon
通常情况下,用户对应用的第一印象来自于icon。当用户看到应用的icon时,他们经常会做这些猜想:它是安全的吗?我可以信任它吗?这款应用可靠吗?应用是否是由专业人士开发?它值得我投入时间吗?
很多时候,当一个应用程序的想法出现在脑海里时,icon通常是最好才被后想起的,但它却是用户对应用的第一印象。通常我会建议你花点钱雇一名好的icon设计师,不过也建议你雇佣一个好的app设计师。如果你想自己设计icon,那么要确保你的icon不会吓跑用户。
对于不同的开发者和设计者来说,每个人似乎都有他们自己关于什么是好的icon的想法。
在App Store的“Camera” 类别中,你会看到一些icon非常引人注目,而另一些icon则似乎被隐蔽了,默默无闻地藏在某个角落。很明显,让icon脱颖而出的是其视觉上的吸引力,但是哪些元素让icon更具视觉吸引力呢?
1.专注于一个独特的形状。是否有一个形状,你可以用在自己的icon中,从而提高icon的可辨认度。
2.用色上精挑细选。确保你使用的颜色能满足某个目的,并保证它们彼此之前能相互协调。
3.避免使用摄影作品。在一个小尺寸的icon上,用户很难看清摄影作品的细节。
4.避免使用大量文本,保证其易读性。
确保你的应用已经遵守了上述几项,从而避免给用户带来不专业的感觉。
强迫用户注册
比如,朋友给你推荐了一款非常优秀的应用,而你也非常有兴趣使用它。下载应用--打开,而弹出的第一个屏幕却要求你先注册,很肯定的一点,这不是你期望的第一体验。用户下载应用后肯定希望能立刻体验它,如果你使用计算器应用都需要注册,那么这个设计是非常愚蠢的。
不过,有些应用出于功能方面的要求需要首先进行注册,这种情况下,要确保有一个很好的指导过程,并且注册要求应该切合应用的实际需求。如果不是这种情况,那么你可以侥幸首先展示应用,如果用户希望解锁更多功能,比如邀请朋友和跟踪目标,那么再要求用户注册。
过小的控件
这一点就如同让一个手指粗大的人穿针引线一样,几乎是不可能实现的。对于儿童来说,我们需要简化元素并将之放大,对于应用来说也一样,大尺寸控件更易于用户与之进行交互。
在此前的iOS版本中,计算器应用中控件尺寸已经比较合适了,不过iOS 7使用了更大一点尺寸的控件。
难以阅读的文本
对用户来说,滚动阅读要比眯着眼阅读容易的多。很多时候,你想从屏幕上获得尽可能多的信息,比如股票图表,但对于文本来说,滚动方式可以让你更快地进行阅读。不过,阅读速度依然依赖于文本阅读的难以程度。使用更大尺寸的文本没有什么不妥。就像上边提到的控件部分,更大一点的尺寸并不仅仅适用于儿童,当不在4英寸屏幕上进行阅读时,大一点的字体会让阅读变得更加容易。
如果你不确定应该使用哪个字号的文本,那可以使用 Dynamic Type 。这样用户可以决定哪个字体大小最适合他们,而你也无需为如何恰到好处地展示内容而担心。
承载过多品牌
思考一下,用户使用你的app所要付出的代价:
1.他们需要从App Store下载你的应用,它展示应用的名称和icon。
2.他们需要通过查看应用名称和icon在手机上打开应用。
3.他们需要观看展示app logo和名称的加载视图。
等到他们真正要使用应用时,你的品牌已经通过三次不同的机会曝光给他们。除此以外,真的没有更多的需求要你在应用中填塞商标或品牌。对于网站来说,给品牌更多曝光机会似乎无可厚非,因为你不知道用户是如何到达你的网站的。但是对于应用来说,用户到达应用只有一个方法,就是点击打开应用。
令人困惑的动画
动画可以让应用更加简单简洁,不过不适当的使用也会让应用变得难以理解或者令用户迷失。把动画用在设计当中非常尤其重要,不过问题在于很多时候它们并没有任何目的。在本文中,我们不深究纷繁难懂的动画。
仅仅只是部分例子
在app设计过程中,开发者和设计师犯过很多破坏设计的错误,不过上述是最明显的一部分,并且也很容易避免。深入理解设计规则和移动应用特性可以帮你打造更好的用户体验。
出处:cocoachina
6个错误将杀死你的App的更多相关文章
- VS2015调试UWP程序时提示错误DEP0700 : Registration of the app failed. Another user has already installed
在同一台windows10电脑上调试过一个工程以后,切换了账号再次调试出现错误 DEP0700 : Registration of the app failed. Another user has a ...
- 错误:无法访问android.app.Activity 找不到android.app.Activity的类文件
视频里面在工程ndk22/bin/classes中 运行javah com.cn.ndk22.Ndk22.Activity ,出现了.h文件 但是我在bin/classes目录中运行javah 时出 ...
- ios APP进程杀死之后和APP在后台接收到推送点击跳转到任意界面处理
https://www.jianshu.com/p/ce0dc53eb627 https://www.cnblogs.com/er-dai-ma-nong/p/5584724.html github: ...
- Electron 发生错误 "Cannot find module app"的解决方案
运行一个electron小demo出现的一个错误信息:Cannot find module app 原代码如下所示: var app = require('app'); var BrowserWind ...
- APP长时间后台运行
* 参考:http://www.nivalxer.com/archives/187 首先,我要说明的是在iOS中,一般应用程序在后台挂起之后仅拥有3分钟时间来处理相应的未完成事件,但是3分钟之后就会 ...
- 关于面试总结-app测试面试题
前言 现在面试个测试岗位,都是要求全能的,web.接口.app啥都要会测,那么APP测试一般需要哪些技能呢? 面试app测试岗位会被问到哪些问题,怎样让面试管觉得你对APP测试很精通的样子? 本篇总结 ...
- ASP.NET Core中显示自定义错误页面
在 ASP.NET Core 中,默认情况下当发生500或404错误时,只返回http状态码,不返回任何内容,页面一片空白. 如果在 Startup.cs 的 Configure() 中加上 app. ...
- 【转】 App架构设计经验谈:接口的设计
App与服务器的通信接口如何设计得好,需要考虑的地方挺多的,在此根据我的一些经验做一些总结分享,旨在抛砖引玉. 安全机制的设计 现在,大部分App的接口都采用RESTful架构,RESTFul最重要的 ...
- app上架流程的整理
app的上架流程 一.准备工作 首先需要有开发者账号,企业级的账号是299$,个人开发者账号是99$,没有的话可以登录http://developer.apple.com/自行申请 假如你已经有账号了 ...
随机推荐
- TCPCopy使用
http://www.thinkingbar.com/2014/04/17/tcpcopy使用/ 主题 技术 一.应用背景 主要用于系统的稳定性测试.它可以复制线上服务器的请求,通过修改TCP/I ...
- 基于HTML5的网络拓扑图
电信网管系统中,设备状态信息的实时展示非常重要,通常会挂载一堆图标来展示状态或告警信息,图标的信息量有限,有时需要更详细的面板,甚至以图表的形式展现,本文将结合最近客户提到的需求,使用 Qunee1. ...
- Rails学习笔记一
安装篇: 下载railsintalls 这里我下载的是rubyinstaller-1.9.3-p448 安装后,安装SQLite3数据库 下载sqlite3.def sqlite3.dll sqlit ...
- 初学SQL常用到的一些指令
一.库 查看有哪些库:show databases; 进入某个库:use 库名; 新增库:create database atm; (atm为库名) 删除库:drop database if exis ...
- Linux 命令行快捷键
说明 Ctrl – k: 先按住 Ctrl 键,然后再按 k 键: Alt – k: 先按住 Alt 键,然后再按 k 键: M – k:先单击 Esc 键,然后再按 k 键. 移动光标 Ctrl – ...
- linux查看一条命令的执行结果是1还是0
echo $? 0为成功 其他为失败
- jQuery学习总结
1:jQuery是什么 jQuery是继prototype之后又一个优秀的Javascript框架.它是轻量级的js库,兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, O ...
- Installshield如何实现升级覆盖文件
这个简单的问题,问过的人不计其数,但是反馈者寥寥,并且往往不能顺利达成目标,只能采取复杂方式来实现,这里吐槽一下IS的帮助文档,很庞大很全,但是有些小技巧就是不讲. 网友冰雪孤独哥今天提供了及时的反馈 ...
- TYVJ 1117 BFS
无限WA..参考了一下题解和同学写的....... 可以在bfs的基础上改一下.. 读入的时候平地权值是2 草地是0 bfs的时候如果搜到的是平地,那么直接加入,如果搜到的是草地,那么记录是草地. 从 ...
- C#的类及应用
1.int i=x.Length;//Length(获取字符串的长度,返回一个int类型的值) 2.x=x.Trim();(去掉字符串前后的空格) trimStart();(去掉前面的空格) Trim ...