Foundation.framework
From iPhone Development Wiki
| Foundation.framework | |
| Public Framework | |
|---|---|
| Availabile | 1.0 – present |
| Class Prefix | NS |
This is the basic Objective-C-based framework, used by everything. Provides NSString, NSDictionary, NSArray, ... It provides many classes that wrap CoreFoundation classes, but also provides unique functionality above and beyond that.
Contents |
Mac OS X classes that are undocumented on the iPhoneOS
There are several classes that are present on both Mac OS X and iPhoneOS, but the corresponding documentation are not found on the iPhoneOS.
| Class | Possible reason for being undocumented |
|---|---|
| NSAffineTransform | CGAffineTransform is used instead. |
| NSUnarchiver and NSArchiver | Deprecated — use NSKeyedUnarchiver and NSKeyedArchiver instead. |
| NSPointerFunctions, NSHashTable and NSMapTable | No garbage collection on iPhoneOS. |
| NSHost | Who knows? |
| NSTask | SDK-compatible programs are not supposed to open other executables. |
| NSPortMessage | SDK-compatible programs are not supposed to perform IPC. (Although NSMessagePort is documented.) |
| NSProtocolChecker | Distributed objects are not available on the iPhoneOS. |
| NSURLDownload | Who knows? (Note that NSURLDownload was not available.) |
Versions
| Firmware | 2.0 | 2.1 | 2.2 | 3.0 | 3.1 | 3.2 | 4.0 | 4.1 | 4.2 | 4.3 |
|---|---|---|---|---|---|---|---|---|---|---|
| SourceCache version | 678.24 | 678.26 | 678.29 | 678.47 | 678.51 | 678.60 | 751.32 | 751.37 | 751.49 | 751.58 |
| dylib version | 678.24 | 678.26 | 678.29 | 678.47 | 678.51 | 678.60 | 751.32 | 751.37 | 751.49 | 751.58 |
Environment variables
Application built with Foundation will recognize the following environment variables
| Name | Purpose |
|---|---|
| NSDebugEnabled | Enable generic debugging. Application-defined behavior. |
| NSHangOnUncaughtException | Hang on uncaught exception instead of crash. |
| NSObjCMessageLoggingEnabled | Useless on iPhoneOS. |
| NSZombieEnabled[1][2] NSDeallocateZombies[1] |
Use "zombies" for easier detection on misusing deallocated objects. |
| NSEnableAutoreleasePool[1] NSAutoreleaseHighWaterMark[1] NSAutoreleaseHighWaterResolution[1] NSAutoreleaseFreedObjectCheckEnabled[1] |
Autorelease pool debugging. |
| NSUnbufferedIO[3] | Use unbuffered IO stream. |
| NSWarnAboutOldStyleArchiverMethods | Warn about old style (non-keyed) archiver methods. |
| TMPDIR NEXT_ROOT |
Some methods depend on these environment variables. |
References
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 http://developer.apple.com/mac/library/technotes/tn2004/tn2124.html#SECFOUNDATION
- ↑ http://www.cocoadev.com/index.pl?NSZombieEnabled
- ↑ http://lists.apple.com/archives/cocoa-dev/2002/Oct/msg00665.html
| ||||||||
| |||||||||||