iOS系统架构及iPhone应用程序框架
- 格式:ppt
- 大小:1.77 MB
- 文档页数:34
IOS学习1——IOS应⽤程序的⽣命周期及基本架构⼀、应⽤程序的状态和多任务有时系统会从app⼀种状态切换另⼀种状态来响应系统发⽣的事件。
例如,当⽤户按下home键、电话打⼊、或其他中断发⽣时,当前运⾏的应⽤程序会切换状态来响应。
应⽤程序的状态有以下⼏种:Not running:app还没运⾏Inactive:app运⾏在foreground但没有接收事件Active:app运⾏在foreground和正在接收事件Background:运⾏在background和正在执⾏代码Suspended:运⾏在background但没有执⾏代码⼤多数发⽣状态转换时都会调⽤delegate对象对应的⽅法来响应app的状态改变。
下⾯汇总了delegate对象的所有⽅法,当app状态发⽣转换时,你可能会使⽤到它们。
application:willFinishLaunchingWithOptions: - 这个⽅法是你在启动时的第⼀次机会来执⾏代码application:didFinishLaunchingWithOptions: - 这个⽅法允许你在显⽰app给⽤户之前执⾏最后的初始化操作applicationDidBecomeActive: - app已经切换到active状态后需要执⾏的操作applicationWillResignActive: - app将要从前台切换到后台时需要执⾏的操作applicationDidEnterBackground: - app已经进⼊后台后需要执⾏的操作applicationWillEnterForeground: - app将要从后台切换到前台需要执⾏的操作,但app还不是active状态applicationWillTerminate: - app将要结束时需要执⾏的操作现在讲下app启动、来回切换app和锁屏时状态的切换和调⽤对应哪些delegate对象的⽅法:app启动和active/inactive如图所⽰,当app启动时,⾸先由not running状态切换到inactive状态,此时调⽤application:didFinishLaunchingWithOptions:⽅法;然后由inactive状态切换到active状态,此时调⽤applicationDidBecomeActive:⽅法。
介绍 (4)谁应阅读本文档? (4)本文档的组织方式 (5)获取iPhone SDK (5)提供反馈 (5)其他参考资料 (6)iOS 开发相关信息 (6)iOS 架构 (6)iPhone SDK 包含哪些东西? (8)您可以在 iOS 创建什么应用程序? (9)如何使用参考库? (9)Cocoa Touch 层 (12)高级特性 (12)多任务 (12)数据保护 (13)苹果推送通知服务 (13)本地通知 (14)手势识别器 (14)文件共享支持 (14)点对点服务 (15)标准系统视图控制器 (15)外部设备支持 (16)Cocoa Touch 层包含的框架 (16)Address Book UI 框架 (16)Event Kit UI 框架 (16)Game Kit 框架 (17)iAd 框架 (17)Map Kit 框架 (17)Message UI 框架 (17)UIKit 框架 (18)媒体层 (19)图形技术 (19)音频技术 (19)视频技术 (20)媒体层包含的框架 (21)资产库框架 (21)AV Foundation 框架 (21)Core Audio (22)Core Graphics 框架 (23)Core Text 框架 (23)Core Video 框架 (23)Image I/O 框架 (23)媒体播放器框架 (24)OpenAL 框架 (24)OpenGL ES 框架 (24)Quartz Core 框架 (25)Core Services 层 (25)高阶特性 (25)块对象 (25)Grand Central Dispatch (26)应用程序内购买(In App Purchase) (26)定位服务 (26)SQLite (26)XML 支持 (27)Core Services 框架 (27)Address Book 框架 (27)CFNetwork 框架 (27)Core Data 框架 (28)Core Foundation 框架 (28)Core Location 框架 (29)Core Media 框架 (29)Core Telephony 框架 (29)Event Kit 框架 (30)Foundation 框架 (30)Mobile Core Services 框架 (30)Quick Look 框架 (31)Store Kit 框架 (31)System Configuration 框架 (31)Core OS 层 (31)Accelerate 框架 (32)External Accessory 框架 (32)Security 框架 (32)System (33)从Cocoa 迁移到iOS (33)通用的迁移注意事项 (33)迁移数据模型 (34)迁移用户界面 (34)内存管理 (35)框架差异 (35)UIKit 与AppKit 的对比 (35)Foundation 框架的差异 (38)其他框架的改变 (38)iOS 开发者工具 (40)Xcode (40)Interface Builder (43)Instruments (44)Shark (45)iOS 的框架 (46)设备中的框架 (46)模拟器的框架 (49)系统库 (49)文档修订历史 (50)介绍iOS 操作系统是 iPhone、 iPod touch 以及 iPad 设备的核心。
IOS系统机制详解对于一个“果粉”而言,“越狱”这个词应该并不算陌生。
虽然他们中大部分并不了解iOS 系统的工作原理,但在国内媒体、第三方应用市场、越狱助手的强大宣传攻势下,为了“免费”、“美化”主题、安装第三方输入法等各种看上去很美好的理由,他们义无反顾的加入了“越狱”的队伍。
但是,“果粉”们并不知道,看似简单的苹果“越狱”背后隐藏的是什么。
2007 年6月伴随着第一代iPhone发布,ios1.0系统也随之出现在也公众的眼前。
虽然这个版本的操作系统甚至连Appstore都没有,但在系统安全性构架方面,这依然是一个划时代的变革。
乔布斯曾多次在公开场合说过:”iOS将用于个人移动设备,它足够安全和稳定,可使用户隐私得以保护。
”iOS系统有无数创新之处,但乔布斯为何特别强调用户隐私?手机是承载用户私密信息最多的地方,因此移动操作系统并非只是一套操控硬件的程序这样简单。
早在iOS系统出现之前,微软便在移动操作系统上做过尝试,在2000年推出了windowsmobil操作系统。
然而windowsmobil系统延续了其PC操作系统的固有思路,大量高级权限、系统漏洞与未经安全检测的第三方程序,使用户的移动设备如筛子一般,个人隐私信息很容易被泄露给第三方。
虽然拥有Push Mail、Mobile Office、Media Player及上万种应用程序,但windows mobile在与黑莓手机的竞争中却败下阵来,后者仅凭借安全、稳定与Push Mail,在美国政商两界一枝独秀,走红多年。
Windows Mobile系统的前车之鉴,使iOS系统在设计之初,便将用户信息安全与隐私保护提到了一个极高的程度:(1)iOS系统设计了沙盒机制,每一个应用都只能访问自己的内存区域,如果一个应用想调用另一个应用运行中的数据——绝对不可能!(这也是为什么第三方输入法不能被安装的原因)(2)iOS系统只能安装来源于AppStore经过签名的应用程序,所有应用在App Store发布前,都需要经过机器+人工的安全监测,确保代码对用户的安全性。
iOS常⽤框架介绍iOS框架介绍Cocoa TouchGameKit 实现对游戏中⼼的⽀持,让⽤户能够在线共享他们的游戏相关的信息iOS设备之间蓝⽛数据传输从iOS7开始过期局域⽹游戏iAd ⽤来在应⽤中提供⼴告条⼴告条与⽤户UI视图进⾏合并,与苹果的iAd服务⼀起⼯作,⾃动处理、加载和呈现富媒体⼴告以及应答在那些⼴告条上的点击等所有相关的⼯作。
MapKit 地图⼯具定制地图的内容和外观,⼤头针注解,线路MessageUI 在应⽤中提供编辑邮件和sms消息的⽀持撰写电⼦邮件,并将其放⼊到⽤户的发件箱排队等候发送该框架提供⼀个SMS撰写⾯板控制器。
您可以通过它在应⽤程序中直接创建并编辑SMS信息(⽆需离开应⽤程序)UIKit 提供实现图形和事件驱动的应⽤的⾄关重要的基础。
功能包括:基本的应⽤管理和基础设施,包括应⽤的主循环;⽤户接⼝管理,包括对storyboards和nib⽂件的⽀持;⼀个⽤来封装⽤户UI内容的视图控制器模式;标准系统视图和控制对象;提供处理触摸和运动事件的⽀持;⽀持包括与iCloud集成功能的⽂档模式;图形和窗⼝⽀持,包括⽀持外部显⽰器;多任务⽀持;打印⽀持;定制标准UIKit控制的外观;⽀持⽂本和web内容;剪切、复制、粘贴的⽀持;⽀持动画UI;通过url语义和框架接⼝与系统提供的其它应⽤集成的能⼒;对有障碍⽤户的可存取性的⽀持;⽀持ApplePush Notification服务;本地通知调度和提交;pdf 创建;⽀持定制像系统键盘⾏为⼀样的⽤户输⼊视图;⽀持创建与系统键盘交互的定制的⽂本视图;⽀持通过email,Twitter, Facebook和其它服务共享内容。
也⽀持⼀些设备特定功能的集成,例如1、内建的摄像机;2、⽤户的图⽚库;3、设备名和模式信息;4、电池状态信息;5、接近传感器信息;6、来⾃附件⽿机的远程控制信息内部各类简介Media LayerCoreImage 提供⾮破坏的⽅式(原先的图像不被改变)操作视频和静态图像提供⼀组强⼤的内建过滤器,在触摸弹起、纠正图⽚以及⾯部和特征检测等许多⽅⾯使⽤(coreImage只是对图像进⾏处理,不是视图绘制和渲染,区别CG,GL等)图⽚滤镜ImageIO 提供输⼊和输出图像数据和图像元数据的接⼝。
(1)各大智能机品牌核心特色苹果1.IOS系统架构:安卓的程序运行,是后台前台都占内存,而苹果的程序运行,后台的不会影响前台的内存,不管你打开过50个或者100个程序,都几乎不会出现卡机的情况。
苹果IOS系统的技术,积累了几十年的操作系统经验,至少领先同行2年。
而且苹果品牌不开放系统,其系统独一无二,只给苹果旗下品牌产品使用,随着IOS系统的更新,其易用性,软件方面,硬件驾驭能力,效能还能继续再提升。
2.FACETIME:苹果用户之间可以支持视频通话,全球用户都可以联通,免费使用。
移动,联通,电信的视频通话用户,可能连1%都不到。
但是苹果用户中,50%开通了这个功能,而且新版的6.0系统都是默认开通的,以后开通率会到99%。
3.IMESSAGE:苹果用户之间可以直接免费发短信。
其他的厂商,都没有提供这样的平台。
最多就是像QQ,微信,但是这些都是必须要安装了第三方软件才可使用。
4.用感:安卓手机的操作键,通常有3-4个,而苹果只有1个HOME键,他用单击,长按,双击,三击,达到了多种功能,用起来比3-4个键的安卓手机更好用,功能更多。
5.保值率:以港版为例,以苹果5年前出的iPhone4为例,现在在二手市场上还能卖1800左右。
这在同行其他品牌中是找不到这样的例子的。
三星1.手机造型:在全球屏幕显示行业,三星拥有的屏幕技术独树一帜,这也为三星手机的造型改变提供了可能。
上半年,三星GalaxyS6/ S6 edge正式登陆市场,绚丽多彩的显示效果和独特的曲面造型让S6一举成为三星有史以来“颜值最高”的手机。
S6 edge采用了Super AMOLED 曲面屏幕,这也是三星在柔性屏幕技术领域不断进步的成果。
三星在柔性屏幕领域的突破,颠覆了消费者对传统手机造型的审美观。
美国的屏幕评测网站Display Mate对S6和S6 Edge的屏幕进行测试以后,授予其屏幕最高等级的Excellect A评分,并认为:“具有双曲面设计的Galaxy S..使用的柔性屏技术将对移动产品、电视的未来设计产生深远影响。