Foundation.framework | |
---|---|
Public Framework | |
Available | 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.
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
- ^ a b c d e f http://developer.apple.com/mac/library/technotes/tn2004/tn2124.html#SECFOUNDATION [Archived 2010-01-14 at the Wayback Machine]
- ^ http://www.cocoadev.com/index.pl?NSZombieEnabled [Archived 2009-12-24 at the Wayback Machine]
- ^ http://lists.apple.com/archives/cocoa-dev/2002/Oct/msg00665.html [Archived 2014-01-16 at the Wayback Machine]