酷勤网 – 程序员的那点事!

当前位置:首页 > 编程 > 移动开发 > 正文

iOS应用简单剖析

浏览次数: 2011年11月09日 Taobao QA Team 字号:

“知己知彼,百战不殆!”在介绍iOS自动化测试框架前,我们先要对iOS应用进行一次解剖。

一、平台特性

iOS是一个完备的操作系统,可以认为是Mac OS X的一个定制系统,是苹果公司的移动操作系统。它提供了一些基于移动设备的特点:Touch-based UI,Cellular network support,Location service,Accelerometer,等。

iOS的用户界面的概念基础上是能够使用多点触控直接操作。控制方法包括滑动,轻触开关及按键。与系统交互包括滑动(swiping),轻按(tapping),挤压(pinching)及旋转(reverse pinching)。

二、应用特性

作为iOS平台的应用,也有其自身的一些特性。

1、iOS平台在运行应用程序时,当前只会有一个正在运行的应用程序,所以UIApplication很容易获取应用程序的事务代理

2、应用程序运行时,所有的视图控件都是在应用程序事务代理这一个window内,这个window是固定的,大小就是屏幕大小。

3、在iOS平台上,应用的访问权限是有限的,只能访问应用本身所在的目录,没有系统其他目录的访问权限

4、应用的响应时间也是有限的,在移动设备上用户退出应用时,如果应用在5S内没有完成保存并放弃控制,则应用程序进程将被终止

5、有限的屏幕大小

6、有限的系统资源,特别是内存是非常有限,所以内存不足的现象在应用中很容易出现。Cocoa Touch提供了一种内置机制,可以将内存不足的情况通知给应用程序。出现这种情况时,应用程序必须释放不需要的内存,甚至可能被强制退出。

三、应用结构

1、应用的生命周期

2、应用的视图结构

1)、window,绝大多数iOS应用只使用一个窗口,所有控件视图都嵌套在该窗口内

2)、view,是iOS应用中很重要的部分,各种操作、效果等等都是在UIView object中实现。View是属于UIWindow的一块矩形区域。

3)、controls,是iOS应用中实现对事件处理的,具有target-action机制,用来响应control事件

4)、iOS应用的基本框架使用的是MVC模式

3、事件处理

1)、在Cocoa Touch这个框架中,只有touch操作被当做事件

2)、能够处理事件的对象叫做Responder

3)、UIResponder定义了4个事件处理:touchesBegan,touchesMoved,touchesEnded,touchesCancelled

这里只是对iOS应用做了简单剖析,可以大概了解iOS应用的特性、结构、运行原理,这是我们在iOS平台上对应用进行自动化测试所需要的基础知识,后续在此基础上给大家介绍淘宝的iOS自动化测试框架。

本文来源:原文链接

无觅相关文章插件,快速提升流量