下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

如何打造“杀手级”移动应用的7个步骤

作者:课课家     来源: http://www.kokojia.com/点击数:626发布时间: 2015-11-30 10:40:16

标签: 视频教程开发教程应用教程

大家是否还对这部分知识存在疑问呀,让我来为大家详细解答一下。课课家将带给您与众不同的知识。本地应用程序通常运行速度更快,是游戏、离线、硬件密集型应用程序的最佳选择。移动Web应用程序可更快地实施,易于维护,更好地适合企业应用程序。
为移动应用提供一个良好的用户体验是至关重要的。这里有七个步骤,让你以正确的方式开发一款伟大的移动应用程序。                                                                       1.定义你的目标 
你想完成的移动应用程序是什么?最重要的是,你的用户想要拿它干什么?你必须确定你的应用程序将达成的目标。对于这一点,你需要了解用户使用这个程序每天的活动、围绕它的目标和动机。
一个好的方法是创建人物(代表用户的虚构人物)。这种方法使你以正确的心态来为你的应用程序陈述需求。例如:“作为保安人员,约翰尼•布拉沃必须用他的手机,找出下一个他应该到达的检查点,android rom并签到,这样他就可以完成随机巡逻。”这种方法可以让你从用户的角度来看应用。
当然,要考虑移动和桌面应用程序的用户故事之间的差异,尤其是当考虑到移动环境。例如,移动用户可以步行或用一只手。
经过收集几个这些故事后,你必须根据他们的频率区分优先级。
2.分析现有的应用程序
如果这是你所创建的第一个移动应用程序,仔细看看现有的其他应用的界面,可以发现有两个显著的事情:屏幕尺寸很小,所以许多移动设备上使用触摸屏;屏幕上的元素一定要大,以便他们很容易触摸。
较小的屏幕和更大的元素意味着你在屏幕上显示的项目数量有限。
“选择在手机屏幕上怎么做”是一个挑战,甚至一些专家主张,在桌面版本之前创建一个移动网站版本。
区分你的用户故事优先次序对此很有帮助。你要认真研究最重要的功能,分析出在80%的时间使用的20%的功能。这些对于桌面应用开发也非常有帮助。                                                                3.本地应用或移动Web应用?
你需要决定使用还是本地API。这一决定对UI技术实现有很大的影响。
硬件抽像层
Android 的HAL(硬件抽像层)是能以封闭源码形式提供硬件驱动模块。HAL 的目的是为了把 Android framework 与 Linux kernel 隔开,让 Android 不至过度依赖 Linux kernel,以达成 Kernel independent 的概念,也让 Android framework 的开发能在不考量驱动程序实现的前提下进行发展。
HAL stub 是一种代理人(Proxy)的概念,Stub 是以 *.so 档的形式存在。Stub 向 HAL“提供”操作函数(Operations),并由 Android runtime 向 HAL 取得 Stub 的Operations,再 Callback 这些操作函数。HAL 里包含了许多的 Stub(代理人)。Runtime 只要说明“类型”,即 Module ID,就可以取得操作函数。
中介软件  
操作系统与应用程序的沟通桥梁,应用分为两层:函数层(Library)和虚拟机(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple Safari 浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自制的Bionic Libc。
Android采用OpenCORE作为基础多媒体框架。Open CORE可分7大块:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。
Android 使用skia 为核心图形引擎,搭配OpenGL/ES。skia与Linux Cairo功能相当,但相较于Linux Cairo, skia 功能还只是雏形的。2005年Skia公司被Google收购,2007年初,android项目实战Skia GL源码被公开,Skia 也是Google Chrome 的图形引擎。
Android的多媒体数据库采用SQLite数据库系统。数据库又分为共用数据库及私用数据库。用户可通过ContentResolver类(Column)取得共用数据库。
Android的中间层多以Java 实现,并且采用特殊的Dalvik 虚拟机(Dalvik Virtual Machine)。Dalvik虚拟机是一种“暂存器型态”(Register Based)的Java虚拟机,变量皆存放于暂存器中,虚拟机的指令相对减少。
Dalvik虚拟机可以有多个实例(Instance), 每个Android应用程序都用一个自属的Dalvik虚拟机来运行,让系统在运行程序时可达到优化。Dalvik 虚拟机并非运行Java字节码(Bytecode),而是运行一种称为.dex格式的文件。
安全权限机制
Android本身是一个权限分立的操作系统。在这类操作系统中,每个应用都以唯一的一个系统识别身份运行(Linux用户ID与群组ID)。系统的各部分也分别使用各自独立的识别方式。Linux就是这样将应用与应用,应用与系统隔离开。
系统更多的安全功能通过权限机制提供。权限可以限制某个特定进程的特定操作,也可以限制每个URI权限对特定数据段的访问。
Android安全架构的核心设计思想是,在默认设置下,所有应用都没有权限对其他应用、系统或用户进行较大影响的操作。这其中包括读写用户隐私数据(联系人或电子邮件),读写其他应用文件,访问网络或阻止设备待机等。
安装应用时,在检查程序签名提及的权限,且经过用户确认后,软件包安装器会给予应用权限。从用户角度看,一款Android应用通常会要求如下的权限:
拨打电话、发送短信或彩信、修改/删除SD卡上的内容、读取联系人的信息、读取日程信的息,写入日程数据、读取电话状态或识别码、精确的(基于GPS)地理位置、模糊的(基于网络获取)地理位置、创建蓝牙连接、对互联网的完全访问、查看网络状态,查看WiFi状态、避免手机待机、修改系统全局设置、读取同步设定、开机自启动、重启其他应用、终止运行中的应用、设定偏好应用、震动控制、拍摄图片等。
一款应用应该根据自身提供的功能,要求合理的权限。用户也可以分析一款应用所需权限,从而简单判定这款应用是否安全。如一款应用是不带广告的单机版,也没有任何附加的内容需要下载,那么它要求访问网络的权限就比较可疑。

本地应用程序通常运行速度更快,是游戏、离线、硬件密集型应用程序的最佳选择。移动Web应用程序可更快地实施,易于维护,更好地适合企业应用程序。二者混合的方法也是有道理的,这样你既可以利用移动Web应用的维护方便特性,也可以使用特定的硬件功能,如手机的摄像头或GPS。
你可以利用现有的框架和平台解决方案,但无论选择什么,确保你可以快速地创建和修改用户界面,以便你可以经常。                                                               
4.快速制作原型
项目启动时测试移动界面的一种快速方法是使用低保真原型。
移动应用程序原型制作很简单:铅笔和纸都是你所需要的,因为屏幕小,你不需要绘制太多。原型可以通过请用户尝试完成他们的任务来测试,看看他们做什么,正在想什么,其结果对改进是惊人的。如果你的移动设计测试失败,那么你的应用程序也将失败。
5.避免破坏用户体验的错误
当开始创建移动应用程序时,开发者通常会犯一些已知的错误。首先,如果他们创造一个现有网站的移动版本,开发人员常常试图复制桌面上每一个功能,没有考虑到移动用户的意图。
另一个常见的错误是有太多的导航结构。深层结构不能很好地适用于移动,简单的模型才能更好地工作。希望用户能够轻松地输入文字是另一个错误:移动设备上文本输入很难,所以你要尽量减少输入。
在手机上运行的优秀应用,是让阅读更多内容而不是书写内容。
6.添加令人愉快的细节  
智能手机永远伴随着你,且知道你在哪里,这就是为什么mapping地图应用程序是如此的成功。智能手机可以听到你所听到和看到你所看到的,这也解释了Shazam和Instagram的普及。使用位置、摄像头、麦克风,都是获得用户所处环境的聪明方法,你可以以独特的方式利用它。
即使你不使用移动设备的硬件功能,也有几个技巧可以用来取悦用户。动画可以增加你的应用程序的生动性。如果你正在创建移动Web应用程序,缓存静态内容、考虑使用CDN内容交付网络,可以使页面载入更快。
受欢迎的触摸移动Web应用程序的另一个特性是可以让用户将它们添加到自己的主屏幕,使他们看起来像本地应用程序的感觉。如果你做到这一点,请记住,在你的用户界面上包含后退按钮,使用户可访问退出选项。
记住用户在不同会话中的选择(例如,最近的项目列表),是另一种智能触摸,这将使应用程序具有上下文感知,使用户不必重复导航步骤。这些可用性能快速完成操作,使用户的使用更轻松。
7.失败宁早,恢复要快
即使有优秀的设计师和开发人员,第一次尝试创建移动应用程序可能也会失败。最好的策略是失败宁早和快速迭代,学习人们是如何使用你的应用程序,并不断改善它。
打造一款杀手级移动应用是很难的,但在这篇文章中概述的战略将对你的工作有所帮助。认真的考虑它们,以你自己的方式来创建一些伟大的移动应用程序吧!
更多的课程可到课课家参考。

赞(107)
踩(4)
分享到:
华为认证网络工程师 HCIE直播课视频教程