本页使用了标题或全文手工转换

iOS

跳到导航 跳到搜索

iOS
开发者 苹果公司
编程语言 CC++Objective-CSwift
操作系统家族 基于DarwinBSD)的类Unix系统macOS
运作状态 活跃
源码模式 闭源,含有开源组件
初始版本 2007年6月29日​(2007-06-29
最新版本

iPhone 5s及以上
iPad Air及以上
iPad mini 2及以上
iPod touch第6代
11.4(2018年5月29日​(2018-05-29

[1]
最新测试版本

11.4.1 Beta 2[2] (15G5063b)[3](2018年6月11日​(2018-06-11

12.0 Beta 3[4] (16A5308e)[5](2018年7月5日​(2018-07-05
支持的语言 40种语言[6][7][8][9]
更新方式 iTunesOTAiOS 5或更高版本)
支持平台
内核类别 混合核心XNU
默认用户界面 Cocoa Touch多点触控GUI
许可证 专有软件最终用户许可协议,开源组件除外
官方网站 中国官方网站
香港官方网站
澳门官方网站
台湾官方网站
美国官方网站

iOS(原名iPhone OS,第四个版本改名为iOS)是苹果公司移动设备所开发的专有移动操作系统,属于类Unix系统,支持设备包括iPhoneiPod touchiPad。与Android不同的是iOS不支持任何非苹果公司的硬件设备。

系统最初于2007年为iPhone而推出。随后,延展扩展支持至苹果公司其他设备。至2017年1月,苹果公司App Store已含有超过220万个iOS应用。

iOS操作系统目前为全球第二大移动操作系统市占约12.1% ,仅次Android系统的88%[10]苹果公司于2017年6月5日之2017年苹果全球开发者大会中介绍了iOS 11,正式版已于2017年9月20日开放下载[11]

历史

2007年1月9日,苹果在2007 Macworld大会中发布iOS(当时名为 iPhone OS),并于同年6月29日发布了iOS的第一个版本。iOS可以透过iTunes对设备进行升级,在iOS 5及以上版本中也可以利用OTA(On the Air)的方式进行软件更新。iOS必须要与设备经由苹果服务器进行验证,验证方式可透过iTunes(iOS 5及以上版本亦可透过iCloud服务验证)并自动同步。[12]在WWDC 2013中,苹果发布了iOS 7,彻底更改了用户界面,将原本拟物的风格转变为平面化风格。最初苹果公司并没有给随iPhone发布的操作系统一个独立的称谓,直到2008年才取名为iPhone OS,并在2010年6月改名为iOS。

系统架构

iOS使用基于与苹果Mac 电脑不同的ARM架构的64位或32位之中央处理器,使用由PowerVR视频卡渲染的MetalDarwin作为基础[13][14]。iOS分为核心操作系统层(the Core OS layer)、核心服务层(the Core Services layer)、媒体层(the Media layer)及触控应用层(the Cocoa Touch layer)。

使用界面

iOS用户界面能使用按键、多点触控对设备进行控制。此外透过其内建的加速器,可以旋转装置以使屏幕改变方向,令设备更便于使用。

  • 实体按键:包括屏幕下方的Home键(用于退出应用程序、回到主界面、长按开启语音控制(Voice Control)或Siri,于iPhone 5s及之后版本及iPad Air 2及之后版本中同时为Touch ID传感器,iPhone 7改为按压式按键,iPhone X已经取消Home键,改为全手势操作),顶部的Power按键(用于点亮、关闭屏幕、关机、iPhone 6iPhone 6 Plus之后移至机身侧面)及侧面的音量控制按键(包含一个静音开关和两个音量大小调节键,在IPad Air 2与其之后的产品中仅有音量调节键)。
  • 多点触控:苹果称为Multi-Touch,包括滑动(Swiping)、轻按(Tapping)、挤压(Pinching)、反向挤压(Reverse Pinching or unpinching),于iPad中还可使用四指或五指手势切换App,与系统互动。
  • 3D touch: 透过屏幕里的感应器,对用户按压的力道做出相对应的反应(最早出现在iPhone 6s,以及后续机型)。
  • 屏幕界面:以应用程序方格的形式呈现,可将多个程序合并至一个文件夹方格中;最底部的一栏为Dock,最多可以有四个(iPad系列中,iPhone OS 3~iOS 10为6个,iOS 11为13个);程序图标被固定在Dock上,可以通过“滑动”的方式进行变换显示的应用程序。状态栏处于屏幕上方,能显示时间、电池电量和信号强度等信息。从屏幕顶端向下轻扫可以显示通知中心。将图标向下轻扫可以启动Spotlight,从屏幕底端向上轻扫可以显示控制中心(iPad在iOS 11后则同时显示多任务)。

安全启动

在用户启动iOS的时候,系统会先从Boot ROM运行的低级代码,其目的检查低级引导加载程序是否已被苹果公司的Root CA公钥签名。同时这可以有效的避免iOS系统不会遭受病毒或其他未经授权的软件的干扰。在加载完成之后,它将运行较高级别的引导加载程序(iBoot),若iBoot运作正常,系统将会继续加载iOS系统的其余部分。

应用程序

  • App Store:App Store苹果公司为旗下作业系统所创建和维护的数位化应用发布平台,允许用户从iTunes Store浏览和下载一些由iOS SDK或者Mac SDK(须造访Mac App Store)开发的应用程序。根据应用程序发布的不同情况,用户可以付费或者免费下载。应用程序可以直接下载到iOS设备,也可以透过macOS或者WindowsiTunes下载到计算机中。其中包含游戏、日程管理、词典及许多实用的软件。
  • 内置程序:iOS最新版本中的应用程序(因设备不同,部分的应用程序可能会有所差异)包含电话、MailSafari、Apple Music、电视、消息日历、照片、相机、FaceTimePhoto Booth、股市、地图(Apple Map)、天气、备忘录、杂志、提醒事项、时钟、计算器、指南针、语音备忘录、App Store、设定、通讯录、iTunesNike+iPod、Voice Control、SiriPassbookFind My iPhone、Home、新闻;在最新版本被移除的软件:YouTube(iOS 6中被移除)、iPod(iOS 5中被拆分成“音乐”和“视频”)、地图(iOS 4中使用AGPS辅助的Google地图;iOS 5中使用格洛纳斯系统辅助的Google地图,在iOS 6及以后的系统中,海外地区使用 Apple Map,而中国大陆地区则使用Apple Map辅助的高德地图。)、Game Center(可在设置中或游戏界面中找到)、视频(iOS 11中改为电视,但在不支持使用电视应用的国家或地区中仍然保留)[15]
  • 第三方应用程序:iOS仅支持从App Store下载应用程序,不允许安装任何第三方应用程序,如果需要安装第三方应用程序就必须要经过iOS 越狱(需要连接计算机,且安装的程序可能存在崩溃等风险),经过越狱后,一款名为Cydia的软件会被安装在设备中,从中可以获得更多应用程序。[16]

开发

开发人员

iOS 开发者计划iOS Developer Program)是苹果公司为iOS开发人员提供的官方项目,该计划包括为开发人员提供开发工具,技术支持培训,资格及程序发布审核等支持[17]苹果公司的 iOS Dev Center网站亦提供了大量技术和学习资料。此外苹果公司每年都会举办苹果公司全球软件开发者年会

开发者每年拥有两次技术支持事件(TSI),每次允许开发者请求技术支持工程师提供代码级支持。问题将被分配给合适的工程师以帮助排除代码问题,指出获取其他技术资源的途径,或者提供能够加速其开发过程的变通方法或相应的技术文档。开发者可以通过会员中心的 “Programs & Add-ons”(计划和附加项目)购买额外的技术支持事件,包括99美元2次技术支持和249美元5次技术支持两种选择。

开发工具

基于 Xcode 3.1最终版本的iPhone软体开发工具包。

iOS软件开发工具包英文iOS SDKSoftware Development Kit);亦称 iPhone SDK)是由苹果公司开发的为iOS设计的应用程序开发工具包。首个版本于2008年2月发布。软件开发工具包需要在Mac OS X Leopard及以上系统并拥有英特尔处理器才能运行,其他的操作系统,包括微软Windows操作系统和旧版本的Mac OS操作系统都不被支持。

然而,只有在交付iOS开发者计划的费用后才能发布应用程序。开发人员可以通过应用商店发布任意设价的应用程序,付费应用将让开发人员获得70%的费用配额,免费的应用程序没有任何费用配额。

2007年10月17日,乔布斯在苹果网站的一封公开信上宣布“软件开发工具包”将会于2008年2月提供给第三方开发商。软件开发工具包于2008年3月6日发布,允许开发者开发iPhoneiPod touch应用程序,并通过“iPhone模拟器”对其进行测试。

自从Xcode 3.1发布以后,Xcode就成为了iOS软件开发工具包的开发环境。和Mac OS X的应用程序一样,iOS应用程序使用Objective-C语言,一些应用程序可以写成C或C++语言。苹果通常会发布两个 iOS 软件开发工具包,包括主要的iOS X.0(例如 iOS 10.0)和次要的iOS X.X(例如 iOS 10.1)。正式版发布前会有几个测试版公布,目的是测试应用程序的兼容性并增加新的功能。

越狱

iOS越狱(英语:iOS Jailbreaking)是获取iOS设备Root权限的技术手段。iOS系统的Root用户对除Apple特定私有进程之外的其他进程不开放,使用Root用户运行的进程在进程树中的PID为0。程序员在iOS中挖掘出一些可以将进程提权至PID0的漏洞(例如Task For PID0)。利用Root用户运行的进程意味着可以任意读取设备其中的APFS分区表和内核缓存地址,拥有一个用户可以随意控制的PID0进程还不能称之为一个完整的越狱。之后还需要利用Bypass(旁路)手段绕过Apple在iOS系统中设置的其他安全防护措施,将APFS或HFS+文件系统中的ROOTFS分区重新挂载(Remount)为可读写(R/W),从而达到添加二进制文件和守护进程的目的。通常大众用户认为能够正常使用Cydia才能被称为越狱,但其实这种说法是不正确的。但通过此软件可以完成越狱前不可能进行的动作,例如安装App Store以外未经过签名的应用、修改SpringBoard、运行Shell程序、使有运营商锁的设备利用卡贴解锁后通过替换配置文件形式实现本地化(例如“去除+86”,解锁FaceTime功能)。[18]如果进行了“不完美越狱”(Semi-tethered Jailbreak),那么设备重启后将失去越狱环境,需要用特定的软件重新进入越狱环境。Jay Freeman在2010年10月估计,全球大概有10%的iPhone曾进行过越狱[19]。不过随着现在 iOS 系统功能的日渐完善,越狱需求已经大不如前。

批评

  1. 基于iOS的(即iPhone、iPod Touch和iPad),或是其他非基于iOS的(即iPod Classic、iPod Nano和iPod Shuffle),均被批评捆绑iTunes,让iTunes Store垄断这些设备[20]
  2. 发布应用程序只能使用苹果规定的API,不得使用或调用任何公开或私有的API。应用程序起初必须以Objective-C、C、C++或执行iPhone OS Webkit的JavaScript语言编写,代码仅能用C、C++编写,Objective-C需可编译,直接链入API的文件(禁止应用程序透过中介编译、兼容层和工具链入API)[21]
  3. 苹果公司在iOS中加入开发限制,使得在iOS开发自有应用显得困难,例如:苹果规定在iOS平台上所有浏览器都必须在自家WebKit渲染引擎上执行,使得非Safari的浏览器如Google ChromeMozilla FirefoxOpera必须修改程序码配合苹果公司牺牲这些浏览器的独有技术及功能,且在iOS中预设的浏览器是Safari,无法使用其他浏览器取代[22]
  4. 苹果对iOS视频音频编解码器的限制,让iOS设备只支持自家拥有专利的H.264AAC,排斥先进的开源编解码器方案,如VP9Opus。让自家的影音格式在市场上保持优势。
  5. 许多用户表示苹果公司透过iOS版本更新的方式拖慢手机运行速度[23],以加速用户换机意愿,使iPhone的销量提高,苹果官方更表示每支iPhone默认寿命约三年[24][25]

设备列表


Apple Watch Series 3Apple Watch Series 3Apple Watch Series 3Apple Watch Series 3Apple Watch Series 2Apple Watch Series 2Apple Watch Series 2Apple Watch Series 2Apple WatchApple WatchApple WatchApple WatchApple TVApple TVApple TVApple TVApple TViPad Mini 4iPad Mini 3iPad Mini 2iPad Mini (1st generation)iPad ProiPad ProiPad ProiPad ProiPad Air 2iPad AiriPad (4th generation)iPad (3rd generation)iPad (2nd generation)iPad (1st generation)iPod Touch (6th generation)iPod Touch (5th generation)iPod Touch (5th generation)iPod Touch#ModelsiPod Touch#ModelsiPod Touch#ModelsiPod Touch#ModelsiPod Touch#ModelsiPhone XiPhone 8iPhone 8iPhone 7iPhone 7iPhone 7iPhone 7iPhone 7iPhone 7iPhone SEiPhone 6SiPhone 6SiPhone 6 PlusiPhone 6iPhone 5SiPhone 5CiPhone 5iPhone 4SiPhone 4iPhone 3GSiPhone 3GSiPhone 3GiPhone 3GiPhone (1st generation)
来源:苹果公司新闻发布库,[26] Mactracker 苹果公司模型数据库[27]

参考资料

  1. ^ Juli Clover. Apple Releases iOS 11.4 With Messages in iCloud and AirPlay 2. MacRumors. 2018-5-29. 
  2. ^ Juli Clover. Apple Seeds Second Beta of iOS 11.4.1 to Developers. MacRumors. June 11, 2018 [June 11, 2018]. 
  3. ^ iOS 11.4.1 beta 2 (15G5063b) - Releases - Apple Developer. developer.apple.com. June 11, 2018 [June 11, 2018]. 
  4. ^ Juli Clover. Third Beta of iOS 12 Now Available for Registered Developers. MacRumors. July 5, 2018 [July 5, 2018]. 
  5. ^ iOS 12 beta (16A5308e) - Releases - Apple Developer. developer.apple.com. July 5, 2018 [July 5, 2018]. 
  6. ^ Apple – iPad Air – View the technical specifications for iPad Air. Apple. [2014-01-01]. 
  7. ^ Apple – iPad mini – View the technical specifications for iPad mini. Apple. [2014-01-01]. 
  8. ^ Apple - iPhone 5c - Technical Specifications. Apple. [2014-01-01]. 
  9. ^ Apple - iPhone 5s - Technical Specifications. Apple. [2014-01-01]. 
  10. ^ Android上季市占率达88%|香港经济日报
  11. ^ http://api.ineal.me/tss/status
  12. ^ Haslam, Karen. Macworld Expo: Optimised OS X sits on ' versatile' flash. Macworld. 2007-01-12 [2007-10-15]. 
  13. ^ iPhone OS 4重命名为iOS4引入微软Bing新浪科技
  14. ^ 顺应广大子民需求,iPhone OS改名为iOS,iOS 4 6月21日上路!瘾科技中文版
  15. ^ Apple Inc. iPhone Applications. 2008-07-10 [2008-07-11]. 
  16. ^ Healey, Jon. Hacking the iPhone. Los Angeles Times. 2007-08-06 [2007-08-06]. 
  17. ^ 苹果开发者计划中的标准计划和企业计划/苹果开发者计划中的标准计划和企业计划 互联网档案馆存档,存档日期2013-10-29.
  18. ^ Can I Unlock My iPhone
  19. ^ Freeman, Jay. Caching Apple's Signature Server. saurik.com. [2010-12-18]. 
  20. ^ Thompson, Bill, Time for Apple to face the music?, BBC News, 2007-09-19 
  21. ^ Original iPhone OS 3 Developer Program License Agreement
  22. ^ Google开源iOS版Chrome,加入Chromium专案-ithome
  23. ^ Will iOS 9 Break My Old iPhone?-WSJ
  24. ^ Apple 如何进行其产品温室气体生命周期评估?(繁体中文)
  25. ^ Apple 如何执行产品温室气体排放的生命周期评估?(LCA)(简体中文)
  26. ^ 苹果公司Apple press release library, Retrieved September 19, 2007.
  27. ^ Mactracker (mactracker.ca), Apple Inc. model database, version as of 26 July 2007.

外部链接