(1)an Intel-based Macintosh,running Lion(OS X 10.7) or later
(2)注册为一名ios开发人员,之后才允许你下载iOS SDK,地址为http://developer.apple.com/ios/,点击Log in,要求你提供Apple ID。没有的话,点击Join Now,创建一个。
最重要的工具就是Xcode。可以从Mac App Store中下载,也就是点击你的Mac电脑的Apple菜单。
SDK版本:从Xcode 4.3开始,Apple一直将当前的稳定版Xcode和iOS SDK发布到Mac App Store中,同时也让开发人员能够从developer site上下载upcoming release的预览版。
你要下载的应该是非beta版的最新发行版,所以应该从App Store中下。
开发者选项:
免费的SDK下载中包含了一个模拟器,但是模拟器是不支持一些和硬件相关的特性的,比如加速计和照相机。而且免费的也不能将应用下载到你的实际iPhone或其他设备上,你也无法向
Apple的App Store中发布应用。要拥有这些功能的话,就必须选其他选项,它们不是免费的:
(1)标准程序:99美元每年。
(2)企业程序:299美元每年。它是为公司开发私有,In-house iOS应用而提供的。
Because iOS supports an always-connected mobile device that uses other companies' wireless infrastructure,Apple对iOS开发人员的限制要比Mac开发人员(编写和发布程序
,不需要来自Apple的监督和批准)的要更严格。即使是iPod touch以及iPad的Wi-Fi-only versions use anyone else's infrastructure,都会受到这些限制。Apple这么做是为了将不
怀好意或写的比较糟糕的程序的机会最小化。
如果你选标准或企业程序,那就要尽快做,因为验证过程要一段时间,有了验证后,你才能在你的实际设备上运行程序。
你需要知道的东西:
本书假设你熟悉Objective-C语言。Cocoa Touch,它是SDK的一部分。作为一个用户,还要熟悉iOS。还要去了解iPhone、iPad、iPod touch的细微差别。
不熟悉Objective-C,可以看这几本书:
Learn Objective-C on the Mac: For OS X and iOS 2nd
Learn Objective-C:A Primer
The Objective-C Programming Language
为iOS编写代码有什么不同?
(1)如果你没有在Cocoa或它的前身NextSTEP或OpenStep,你可能会发觉Cocoa Touch像个外国人(a little alien),它是你写iOS程序要用到的一个框架。如果你用过Cocoa或
NextSTEP,iOS SDK中大多东西你都会熟悉的。用于OS X开发的版本中的许多类都没有变。当然,Cocoa和Cocoa touch是有一些区别的。
iOS开发和桌面应用开发的几个关键不同之处:
(1)只有一个活跃应用
在任意一个给定的时间,只会有一个应用可以被激活并显示在屏幕上。从ios 4开始,当用户点击“Home”,应用程序们就能够运行在后台,但那也是在极少情况下可行。
当你的程序不是活跃的或者是运行在后台,它不会接受来自CPU的任何关心(attention)。
(2)只有一个窗口
桌面或笔记本系统允许许多运行的程序共存,每个程序都能够创建以及控制多个窗口,然而,iOS只给你的应用一个窗口使用,所有的用户交互都发生在该窗口中。
(3)受限的访问
只能从为你的应用创建的iOS文件系统中读写文件。这块去也就称为你的应用的沙箱。也不能够访问low-number网络端口或其他需要root或管理员权限才能做的事。
(4)受限的响应时间
在你的应用正在运行的任何一个时刻,可能都会被抽掉脚下的地毯,就是说iOS就是要快,如果你点击了Home按钮,iOS就会回到home,你就必须快速地保存数据并退出。如果用时超过5
秒的话,你的应用就会被杀掉,不管你有没有完成保存动作。注意,从iOS 5开始,有一个新的API,你的应用可以用它来请求额外的时间。
(5)受限的屏幕尺寸
前面的几代iPhone是320 x 480,iPhone 4's retina display是640 x 960,iphone 5是640 x 1136。 so you can’t really count on using those pixels the same way you would
on a traditional screen.
(6)受限的系统资源
But given the graphical nature of iOS and all it is capable of doing, running out of memory is very easy.
The iOS devices available right now have either 512MB (iPhone 4, iPhone 4S, iPad 2), or 1024MB of
physical RAM (iPhone 5, new iPad)sually, no more than half of that memory is left for your application to use.OS X可以将不用的内存写入到磁盘上的交换文件上,交换文
件的作用就是,当你的应用请求超过计算机可以提供的内存时,应用仍然能够运行,但iOS不会这么做,iOS设备上有多少物理内存,你的应用就被限制在这样的内存中。Cocoa Touch有
一些内置的机制能够让你的应用知道内存正在降低,当发生这样的事时,你的应用就必须释放一些不需要的内存或磁盘资源。
(7)没有垃圾回收,但是...
前面说过,Cocoa Touch用的是Objective-C,但该语言的其中一个关键的新特性在iOS上却不可用:Cocoa Touch不支持垃圾回收。就需要你手动做内存管理。但最近版本的iOS支持的
Objective-C版本有了一个特性叫自动引用计数,消除了需要手动管理内存。从OS X 10.8开始,它成为了默认的内存管理技术。
一些新的东西
我们说过Cocoa touch缺少一些Cocoa有的特性。但iOS SDK包含了一些特性,Coacoa中没有。
(1)iOS SDK为你的应用提供了一种途径来判断IOS设备的当前的地理坐标,利用的是Core Location。
(2)大多数iOS设备都有内置的相机和照片库,SDK可以让你的应用访问它们
(3)iOS设备有内置的加速计,应用可用它来侦测设备当前是如何被拿着或移动。
不同的方式
iOS设备没有物理键盘和鼠标。但在iOS上,假如有一个文本域,只要你触碰一下它,就会弹出一个键盘。
相关推荐
酒店筹建开业筹备工作主要包括以下几个阶段:项目立项与规划、市场调研与定位、设计装修与施工、人员招聘与培训、物资采购与配置、营销推广与品牌建设、开业准备与试运营等。本方案将针对每个阶段提出具体的工作内容...
CMM/CMMI认证前的准备工作: 1.什么是CMM/CMMI? 2.目前在我们软件开发工作中的哪些典型问题可以通过推行CMM/CMMI2的工作加以解决? 3.如何看待推行CMM/CMMI对我们目前工作带来的冲击? 4.推行CMM/CMMI到底...
筹建工厂的准备工作.pdf
工作分析的前期准备工作.pptx
科协筹备工作报告.pdf
团员大会筹备工作报告.pdf
培训准备工作要点.doc
大修前准备工作稿件.doc
Exchange 2013 安装前的准备工作
新投运变电站准备工作.doc
模拟电路板调试前的准备工作.docx
沥青路面施工前的准备工作.doc
Exchange Server 2007系列之十一_部署UM的准备工作和实施要点
2020年疫情防控期间幼儿园开学准备工作方案.docx
企业ERP项目实施前的准备工作,企业概况。
做好重大节日庆祝活动以及承办各项活动的准备工作和.pdf
本文档描述了软件评审的要求和细节,以及评审前的准备工作。
参考资料-建设工程项目前期策划设计及准备工作管理(PPT).zip
展会前准备工作.doc
为进一步做好企业信息化建设工作,从政策的准备、观念的准备、建设队伍的准备、规范和标准的准备、制度的准备和需求的准备等6个方面论述了如何做好企业档案信息化建设工作。