iPhone秘籍 第1章 理论知识

第1部分 背景知识


SDK的版本历史自《1.1》
1.0
1.1加了一些特效,
2.0 3G,2.2
3.2针对iPad放出

Obj-C的地位 是ANSI C的子集,用C和Smalltalke开发。见《objective-2.0参考指南》和在线简介
Mac和iphone程序束的不同 Mac和iphone都有程序束.即后缀是.app的文件夹。iPhone没有分细。Mac数据在Contents和Resouces文件夹。最终文件在MacOS文件夹。iphone都放在顶层。用户域有系统镜像。
自动创建XXX_Predfix.pch预编译头文件。

hm的历史:最先只有c,但只有c太痛苦了,所以有了h.
Product_Name写域名com.sadum.appname.作为商标,区别各个程序。iPhone的SpringBoard,相当于Mac的Finder,用来管理程序。产品标识符,是系统首选项的基础。

Icon File节点。 Default.png 。UIPrerenderedIcon.自《1.3.4》

程序束第10章讲自定义束 URL配置。
组成元素:框架,代码,媒体(图像,音频)
苹果位置/Apllication,自《1.3.1
第3方位置var/mobile/Apllication。
沙盒位置:var/mobile/Applications.
示例在user/share/sandbox  自《1.3.7原则无用

其他限制:1)大小,2)沙盒,3)内存(不支持虚拟内存,内存用尽要重启,高清大图,大音频会使程序终止且没提示) 5) 电量,6)程序,一次一个App。4.0支持后台运行:邮件,电话。7)用户行为限制:手持性=短期交互。每次会话,要重启并进入上次状态(大概)。

限制的原理:各种限制, 都根源于机器性能,和系统稳定。所以,限制是暂时的。自《1.4

限制备要:OpenSDK可以做,但不能卖钱。

  App可以pushWeb服务的数据。发标记编号和消息。不能在App创建外部框架,不能用Cocoa的插件架构。

SDK的弊端

1)没有垃圾回收机制 2)没有全部实现库 3)早期更开放,可以用iTune Store搜索商店,Celestial框架做QuickTime.自《1.5
底层UNIX被沙盒遮盖。
文本格式,或压缩二进制。

h是头文件,m是实现文件。
.cpp是c++,c是c,m是obj-c。

第2部分

3种控制器_秘籍ch01简介(2)
1)委托/协议——强制方法1 协议是委托的变体2
2)目标操作——按钮动作3
3)事件通知,有4个。2个可用,2个不能。
NSNotificationCenter可用,可以带数据4
DarwinNotificationCenter可用,不能带数据*
NSDistributedNotificationCenter未实现,程序之间
TelephonyNotificationCenter未实现,电话通知自《1.6.2
3 模型=数据源

写法①代码[uiobjectsetDataSource:appObject].
②委托<UITableViewDataSource>。
公开数据源和委托方法自《3-3》消息跟踪,非公开方法。
MVC

1重在框架,不在程序。框架下加内容。

2视图控制器不是MVC控制器

苹果自定义。意思方便布局,自动旋转。

自《1.6.1

伪多重继承

帮助没说清。信息是数组。

注意,至少2个参数,带object.不然会报错说被发送到某对象。

1强制 表格点击行tableView:didSelectRowAtIndexPath;

自定义协议和强制方法。关键词FTPHostDelegate找原文例子。

2协议≈委托,例如 setDelegate:的变体是<UITableViewDelegate>。

Darwin用BSD构建,如notify_post(),notify_register_mach_port()

例旋转UIApllicationWillChangeStatusBar…和UIDeviceOrientationDidChangeNotification.

 

 


第3部分

 

数据源:本地数据库,XML,无线热点。                  知识园地

用到数据源的对象:表格,选取器,openFlow。自《3-1

Developer Mode for Crash Reporter.实时查看故障,1.9.3. Developer/Applications/Utilities/CrashRepoerterPrefs,选Developer,退出,infinite-labs.betEmanule Vulcano

调试:1)断点2)运行3)调试窗口4)检查5)断点选项,见《Xcode UserGuide:Debugging Programs自《1.9.5

※※※

Projects&Sources列表。拖到Organizer,双击打开项目。Build,Clean,Run,Action按钮。

Developer/Shared/Xcode/Screenshots/ApplicationSupport

Summary.支持最多5个设备。Provisioning显示App。1.11.3

Console,真机NSLog。

CrashLogs 监视线程异常

SceenShot截图,上传AppStore图片,开机图。自《1.11.5

※※※

只有连线才有调试。不能用无线。Velcro粘带。1.11.7

真机编译慢,可以去喝茶。1.11.8真机调试。见《Xcode3_2_5免证书开发调试》自1.11.9

仿真机不能做什么?不能测试照相,钥匙,加速器。

最后一段代码没看1.7

? 2个监视Com.apple.mobile.application_install,com.apple.mobile.application_uninstalled.

源代码转提交Apple文件。code SigningEntitlement设置为iPhone Distribution

本书代码设置:钥匙串访问→证书管理→创建证书→显示简介→信任→总是信任.右键→getInfo Eric Sadun

SDK大小1G

iphone程序比mac简单,Info.plist和lproj

Ad Hoc。FairPlay。注册设备,设备标识符Program Portal Devices.

 


《iPhone/iPad apps的图标及启动图片》

《objective-C的基本数据类型,数字,字符串,和集合等介绍》

介绍Orgnizier


 

你可能感兴趣的:(iPhone秘籍 第1章 理论知识)