https://iphonedev.wiki/api.php?action=feedcontributions&user=Sakurina&feedformat=atomiPhone Development Wiki - User contributions [en]2024-03-29T13:39:08ZUser contributionsMediaWiki 1.39.6https://iphonedev.wiki/index.php?title=Frameworks&diff=777Frameworks2010-08-14T04:52:28Z<p>Sakurina: Put back the navbox I accidentally removed.</p>
<hr />
<div>[[Frameworks]] are bundles which contains a linkable library (usually a dylib), the associated resources and headers for development. <br />
<br />
There are so called “public” and [[PrivateFrameworks|“private”]] frameworks. The former are usually well documented and prepared for use by general developers, while the latter are (supposed to be) restricted for internal use only. Public frameworks can be found in <tt>/System/Library/Frameworks</tt>, and the private ones in <tt>/System/Library/PrivateFrameworks</tt>. Other than these artificial division, there are no difference between public and private frameworks.<br />
<br />
== Structure of a Framework ==<br />
Frameworks should have an extension of <tt>.framework</tt>. Headers, if any, should be stored in a subdirectory called <tt>Header</tt>. <br />
<br />
== References ==<br />
* [http://developer.apple.com/iphone/library/documentation/General/Conceptual/DevPedia-CocoaCore/Framework.html Apple's definition of frameworks].<br />
<br />
== List of frameworks ==<br />
This reflects the state of frameworks as of iOS 4.0 (8A293).<br />
<br />
=== Public ===<br />
* [[AVFoundation.framework]] (com.apple.avfoundation)<br />
* [[Accelerate.framework]] (com.apple.Accelerate)<br />
* [[AddressBook.framework]] (com.apple.AddressBook)<br />
* [[AddressBookUI.framework]] (com.apple.AddressBookUI)<br />
* [[AssetsLibrary.framework]] (com.yourcompany.AssetsLibrary)<br />
* [[AudioToolbox.framework]] (com.apple.audio.toolbox.AudioToolbox)<br />
* [[AudioUnit.framework]] (com.apple.audio.units.AudioUnit)<br />
* [[CFNetwork.framework]] (com.apple.CFNetwork)<br />
* [[CoreAudio.framework]] (com.apple.audio.CoreAudio)<br />
* [[CoreData.framework]] (com.apple.CoreData)<br />
* [[CoreFoundation.framework]] (com.apple.CoreFoundation)<br />
* [[CoreGraphics.framework]]<br />
* [[CoreLocation.framework]] (com.apple.corelocation)<br />
* [[CoreMedia.framework]] (com.apple.CoreMedia)<br />
* [[CoreMotion.framework]] (com.apple.coremotion)<br />
* [[CorePDF.framework]] (com.apple.CorePDF)<br />
* [[CoreTelephony.framework]] (com.apple.coretelephony)<br />
* [[CoreText.framework]] (com.apple.CoreText)<br />
* [[CoreVideo.framework]] (com.apple.CoreVideo)<br />
* [[EventKit.framework]] (com.apple.eventkit)<br />
* [[EventKitUI.framework]] (com.apple.eventkitui)<br />
* [[ExternalAccessory.framework]] (com.apple.ExternalAccessory)<br />
* [[Foundation.framework]] (com.apple.Foundation)<br />
* [[GameKit.framework]] (com.apple.GameKit)<br />
* [[IOKit.framework]]<br />
* [[ImageIO.framework]] (com.apple.ImageIO.framework)<br />
* [[MapKit.framework]] (com.apple.MapKit)<br />
* [[MediaPlayer.framework]] (com.apple.MediaPlayer)<br />
* [[MessageUI.framework]] (com.apple.messageui)<br />
* [[MobileCoreServices.framework]] (com.apple.MobileCoreServices)<br />
* [[OpenAL.framework]] (com.apple.audio.OpenAL)<br />
* [[OpenGLES.framework]] (com.apple.opengles)<br />
* [[QuartzCore.framework]] (com.apple.QuartzCore)<br />
* [[QuickLook.framework]] (com.apple.QuickLook)<br />
* [[Security.framework]] (com.apple.Security)<br />
* [[StoreKit.framework]] (com.apple.StoreKit)<br />
* [[System.framework]]<br />
* [[SystemConfiguration.framework]] (com.apple.SystemConfiguration)<br />
* [[UIKit.framework]] (com.apple.UIKit)<br />
* [[iAd.framework]] (com.apple.iAd)<br />
<br />
{{Navbox Frameworks}}<br />
{{Navbox Library}}<br />
[[Category:Directories in /System/Library]]</div>Sakurinahttps://iphonedev.wiki/index.php?title=Frameworks&diff=776Frameworks2010-08-14T04:51:35Z<p>Sakurina: /* List of frameworks */ Whoops, forgot the .framework was needed in links</p>
<hr />
<div>[[Frameworks]] are bundles which contains a linkable library (usually a dylib), the associated resources and headers for development. <br />
<br />
There are so called “public” and [[PrivateFrameworks|“private”]] frameworks. The former are usually well documented and prepared for use by general developers, while the latter are (supposed to be) restricted for internal use only. Public frameworks can be found in <tt>/System/Library/Frameworks</tt>, and the private ones in <tt>/System/Library/PrivateFrameworks</tt>. Other than these artificial division, there are no difference between public and private frameworks.<br />
<br />
== Structure of a Framework ==<br />
Frameworks should have an extension of <tt>.framework</tt>. Headers, if any, should be stored in a subdirectory called <tt>Header</tt>. <br />
<br />
== References ==<br />
* [http://developer.apple.com/iphone/library/documentation/General/Conceptual/DevPedia-CocoaCore/Framework.html Apple's definition of frameworks].<br />
<br />
== List of frameworks ==<br />
This reflects the state of frameworks as of iOS 4.0 (8A293).<br />
<br />
=== Public ===<br />
* [[AVFoundation.framework]] (com.apple.avfoundation)<br />
* [[Accelerate.framework]] (com.apple.Accelerate)<br />
* [[AddressBook.framework]] (com.apple.AddressBook)<br />
* [[AddressBookUI.framework]] (com.apple.AddressBookUI)<br />
* [[AssetsLibrary.framework]] (com.yourcompany.AssetsLibrary)<br />
* [[AudioToolbox.framework]] (com.apple.audio.toolbox.AudioToolbox)<br />
* [[AudioUnit.framework]] (com.apple.audio.units.AudioUnit)<br />
* [[CFNetwork.framework]] (com.apple.CFNetwork)<br />
* [[CoreAudio.framework]] (com.apple.audio.CoreAudio)<br />
* [[CoreData.framework]] (com.apple.CoreData)<br />
* [[CoreFoundation.framework]] (com.apple.CoreFoundation)<br />
* [[CoreGraphics.framework]]<br />
* [[CoreLocation.framework]] (com.apple.corelocation)<br />
* [[CoreMedia.framework]] (com.apple.CoreMedia)<br />
* [[CoreMotion.framework]] (com.apple.coremotion)<br />
* [[CorePDF.framework]] (com.apple.CorePDF)<br />
* [[CoreTelephony.framework]] (com.apple.coretelephony)<br />
* [[CoreText.framework]] (com.apple.CoreText)<br />
* [[CoreVideo.framework]] (com.apple.CoreVideo)<br />
* [[EventKit.framework]] (com.apple.eventkit)<br />
* [[EventKitUI.framework]] (com.apple.eventkitui)<br />
* [[ExternalAccessory.framework]] (com.apple.ExternalAccessory)<br />
* [[Foundation.framework]] (com.apple.Foundation)<br />
* [[GameKit.framework]] (com.apple.GameKit)<br />
* [[IOKit.framework]]<br />
* [[ImageIO.framework]] (com.apple.ImageIO.framework)<br />
* [[MapKit.framework]] (com.apple.MapKit)<br />
* [[MediaPlayer.framework]] (com.apple.MediaPlayer)<br />
* [[MessageUI.framework]] (com.apple.messageui)<br />
* [[MobileCoreServices.framework]] (com.apple.MobileCoreServices)<br />
* [[OpenAL.framework]] (com.apple.audio.OpenAL)<br />
* [[OpenGLES.framework]] (com.apple.opengles)<br />
* [[QuartzCore.framework]] (com.apple.QuartzCore)<br />
* [[QuickLook.framework]] (com.apple.QuickLook)<br />
* [[Security.framework]] (com.apple.Security)<br />
* [[StoreKit.framework]] (com.apple.StoreKit)<br />
* [[System.framework]]<br />
* [[SystemConfiguration.framework]] (com.apple.SystemConfiguration)<br />
* [[UIKit.framework]] (com.apple.UIKit)<br />
* [[iAd.framework]] (com.apple.iAd)</div>Sakurinahttps://iphonedev.wiki/index.php?title=Frameworks&diff=775Frameworks2010-08-14T04:50:32Z<p>Sakurina: Added list of public frameworks + bundle IDs.</p>
<hr />
<div>[[Frameworks]] are bundles which contains a linkable library (usually a dylib), the associated resources and headers for development. <br />
<br />
There are so called “public” and [[PrivateFrameworks|“private”]] frameworks. The former are usually well documented and prepared for use by general developers, while the latter are (supposed to be) restricted for internal use only. Public frameworks can be found in <tt>/System/Library/Frameworks</tt>, and the private ones in <tt>/System/Library/PrivateFrameworks</tt>. Other than these artificial division, there are no difference between public and private frameworks.<br />
<br />
== Structure of a Framework ==<br />
Frameworks should have an extension of <tt>.framework</tt>. Headers, if any, should be stored in a subdirectory called <tt>Header</tt>. <br />
<br />
== References ==<br />
* [http://developer.apple.com/iphone/library/documentation/General/Conceptual/DevPedia-CocoaCore/Framework.html Apple's definition of frameworks].<br />
<br />
== List of frameworks ==<br />
This reflects the state of frameworks as of iOS 4.0 (8A293).<br />
<br />
=== Public ===<br />
* [[AVFoundation]] (com.apple.avfoundation)<br />
* [[Accelerate]] (com.apple.Accelerate)<br />
* [[AddressBook]] (com.apple.AddressBook)<br />
* [[AddressBookUI]] (com.apple.AddressBookUI)<br />
* [[AssetsLibrary]] (com.yourcompany.AssetsLibrary)<br />
* [[AudioToolbox]] (com.apple.audio.toolbox.AudioToolbox)<br />
* [[AudioUnit]] (com.apple.audio.units.AudioUnit)<br />
* [[CFNetwork]] (com.apple.CFNetwork)<br />
* [[CoreAudio]] (com.apple.audio.CoreAudio)<br />
* [[CoreData]] (com.apple.CoreData)<br />
* [[CoreFoundation]] (com.apple.CoreFoundation)<br />
* [[CoreGraphics]]<br />
* [[CoreLocation]] (com.apple.corelocation)<br />
* [[CoreMedia]] (com.apple.CoreMedia)<br />
* [[CoreMotion]] (com.apple.coremotion)<br />
* [[CorePDF]] (com.apple.CorePDF)<br />
* [[CoreTelephony]] (com.apple.coretelephony)<br />
* [[CoreText]] (com.apple.CoreText)<br />
* [[CoreVideo]] (com.apple.CoreVideo)<br />
* [[EventKit]] (com.apple.eventkit)<br />
* [[EventKitUI]] (com.apple.eventkitui)<br />
* [[ExternalAccessory]] (com.apple.ExternalAccessory)<br />
* [[Foundation]] (com.apple.Foundation)<br />
* [[GameKit]] (com.apple.GameKit)<br />
* [[IOKit]]<br />
* [[ImageIO]] (com.apple.ImageIO.framework)<br />
* [[MapKit]] (com.apple.MapKit)<br />
* [[MediaPlayer]] (com.apple.MediaPlayer)<br />
* [[MessageUI]] (com.apple.messageui)<br />
* [[MobileCoreServices]] (com.apple.MobileCoreServices)<br />
* [[OpenAL]] (com.apple.audio.OpenAL)<br />
* [[OpenGLES]] (com.apple.opengles)<br />
* [[QuartzCore]] (com.apple.QuartzCore)<br />
* [[QuickLook]] (com.apple.QuickLook)<br />
* [[Security]] (com.apple.Security)<br />
* [[StoreKit]] (com.apple.StoreKit)<br />
* [[System]]<br />
* [[SystemConfiguration]] (com.apple.SystemConfiguration)<br />
* [[UIKit]] (com.apple.UIKit)<br />
* [[iAd]] (com.apple.iAd)<br />
{{Navbox Frameworks}}<br />
{{Navbox Library}}<br />
[[Category:Directories in /System/Library]]</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconList&diff=597SBIconList2010-01-08T21:36:08Z<p>Sakurina: </p>
<hr />
<div>{{occlass|library=SpringBoard.app}}<br />
'''SBIconList''' is a view containing one or several [[SBIcon|icons]]. Each page on the home screen is a different instance of SBIconList.<br />
<br />
== Notable Subclasses ==<br />
* [[SBButtonBar]] is a subclass that is used for the dock.<br />
<br />
== Modifying the dimensions of SBIconList ==<br />
The dimensions (max rows and columns) can be modified by hooking into the ''maxIconColumns'' and ''maxIconRows'' methods. The OS will attempt to space the icons according to default spacing, so adding a fifth column would cause the fifth column to wrap to the next row. Icon origins can be changed by hooking into ''originForIconAtX:Y:''. The OS reuses icons to save on object allocations; as soon as a column is estimated as being off-screen, the icons get reused for the next column to appear onscreen. If the number of maximum columns goes over 5 (3.x) or 4 (2.x), you may notice flickering when switching pages.<br />
<br />
* '''Note:''' CategoriesSB takes advantage of a quirk in the ''originForIconAtX:Y:'' where going beyond the bounds of the maximum columns/rows returns the value where such a row or column ''would'' be. Do not assume all calls to this method will be comprised within the max icon column/row bounds.<br />
<br />
== Edit mode & icon moving ==<br />
Icon moving in edit/wiggle mode is not, contrary to expectations, related at all to where icons are located onscreen. If you have a 4x4 home screen but you play with the originForIconAtX:Y: values returned for each of these icons, you will notice that moving icons around will be exactly the same as it was before you changed their origins. Two methods, ''columnAtPoint:'' and ''rowAtPoint:'' estimate which column and row you are in according to the point passed in. Anyone wanting to make icon moving more natural for a modified layout would have to hook these methods accordingly.</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconModel&diff=596SBIconModel2010-01-08T21:32:04Z<p>Sakurina: </p>
<hr />
<div>'''SBIconModel''' is a singleton class embodying all of the logic behind [[SBIconList|home screen pages]] and the [[SBButtonBar|dock]]. As of iPhone OS 3.1, it also handles communicating with the Applications tab in iTunes 9.<br />
<br />
This class is only a model. To control the icon lists, you should use the [[SBIconController]] singleton class.<br />
<br />
== Communication with iTunes 9's Applications tab ==<br />
As of iTunes 9, Apple's Applications tab allows users to rearrange applications on their home screens. However, certain scenarios, such as modified dimensions on [[SBIconList]] or defining a new maximum amount of pages on SBIconModel, aren't expected by iTunes, and it then either completely scrambles your home screen's arrangement on every sync involving applications or simply crashes iTunes.<br />
<br />
Communication with iTunes is handled by two methods on SBIconModel: ''exportState'' and ''importState:''. ''exportState'' returns an array of all icon lists and dictionary representations of the icons inside them. This is what iTunes will use to display the icons in the Applications tab. Any installed applications that are missing from the array this returns (due to LibHide, or having too many icons for the max amount of icon lists) will be appended by iTunes itself. ''importState:'' is the method called when iTunes proposes a new home screen arrangement. Ignoring all propositions from iTunes is as simple as hooking this method and returning NO.<br />
<br />
{{IPFHeader|SpringBoard|.app}}</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconList&diff=595SBIconList2010-01-08T21:18:54Z<p>Sakurina: Added info gathered from FCSB and Iconoclasm development</p>
<hr />
<div>{{occlass|library=SpringBoard.app}}<br />
'''SBIconList''' is a view containing one or several [[SBIcon|icons]]. Each page on the home screen is a different instance of SBIconList.<br />
<br />
== Notable Subclasses ==<br />
* [[SBButtonBar]] is a subclass that is used for the dock.<br />
<br />
== Modifying the dimensions of SBIconList ==<br />
The dimensions (max rows and columns) can be modified by hooking into the ''maxIconColumns'' and ''maxIconRows'' methods. The OS will attempt to space the icons according to default spacing, so adding a fifth column would cause the fifth column to wrap to the next row. Icon origins can be changed by hooking into ''originForIconAtX:Y:''. The OS reuses icons to save on object allocations; as soon as a column is estimated as being off-screen, the icons get reused for the next column to appear onscreen. If the number of maximum columns goes over 5 (3.x) or 4 (2.x), you may notice flickering when switching pages.<br />
<br />
* '''Note:''' CategoriesSB takes advantage of a quirk in the ''originForIconAtX:Y:'' where going beyond the bounds of the maximum columns/rows returns the value where such a row or column ''would'' be. Do not assume all calls to this method will be comprised within the max icon column/row bounds.</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconList&diff=115SBIconList2009-09-26T21:29:40Z<p>Sakurina: </p>
<hr />
<div>{{occlass|library=SpringBoard.app}}<br />
'''SBIconList''' is a view containing one or several [[SBIcon|icons]]. Each page on the home screen is a different instance of SBIconList.<br />
<br />
== Notable Subclasses ==<br />
* [[SBButtonBar]] is a subclass that is used for the dock.</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconModel&diff=114SBIconModel2009-09-26T21:29:07Z<p>Sakurina: </p>
<hr />
<div>{{occlass|library=SpringBoard.app}}<br />
'''SBIconModel''' is a class embodying all of the logic behind [[SBIconList|home screen pages]] and the [[SBButtonBar|dock]]. As of iPhone OS 3.1, it also handles communicating with the Applications tab in iTunes 9.</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconModel&diff=113SBIconModel2009-09-26T21:28:13Z<p>Sakurina: Created page with '{{occlass|library=SpringBoard}} '''SBIconModel''' is a class embodying all of the logic behind home screen pages and the dock. As of iPhone OS 3.1,…'</p>
<hr />
<div>{{occlass|library=SpringBoard}}<br />
'''SBIconModel''' is a class embodying all of the logic behind [[SBIconList|home screen pages]] and the [[SBButtonBar|dock]]. As of iPhone OS 3.1, it also handles communicating with the Applications tab in iTunes 9.</div>Sakurinahttps://iphonedev.wiki/index.php?title=SBIconList&diff=112SBIconList2009-09-26T21:24:59Z<p>Sakurina: Created page with '{{occlass|library=SpringBoard}} '''SBIconList''' is a view containing one or several icons. Each page on the home screen is a different instance of SBIconList. == Not…'</p>
<hr />
<div>{{occlass|library=SpringBoard}}<br />
'''SBIconList''' is a view containing one or several [[SBIcon|icons]]. Each page on the home screen is a different instance of SBIconList.<br />
<br />
== Notable Subclasses ==<br />
* [[SBButtonBar]] is a subclass that is used for the dock.</div>Sakurina