General Framework Enhancements in iOS6, Develop your App in Seconds ,Basic, theory


This is the second article based on iOS 6 app development, following my previous article “A quick look at iOS6 SDK and API” . In this article I’ll briefly compile the enhancements that have been made to different frameworks in iOS6. All these frameworks did exist in the previous version of the SDK and have been added with some more features. Let’s look at them one by one.

Foundation

The following enhancements are made to the Foundation Framework (Foundation.framework)
1. NSString has got new methods to convert to uppercase, lower case and initial capital   case.
2. A new class named NSUUID has been added to the framework. This class can be used to
create various types of Universally Unique Identifiers (UUID).
3. While using NSURLRequest, now it is possible to specify if the URL Request will be performed on a cellular data network or not.
4. NSFileManager class got a new method ubiquityIdentityToken. This method can be used to determine the availability of iCloud. NSUbiquityIdentityDidChangeNotification provides notification when a user logs in or out from iCloud.

UIKit

1. Implementation of “UI State Preservation”, “Auto Layout” and “Collection Views” as stated in the previous article.
2. UITextField and UITextView now supports styled text using attributed strings.
3. Support for drawing NSAttributedString and NSMutableAttributedString is added. Also
support for attributed string has been added to string-based views.
4. VoiceOver enhancement to the Accessibility Support
        a. VoiceOver can now use gesture to invoke specific action
        b. While scrolling, scroll view provides access to a special status string
    c. When app’s layout or UI is changed, it is possible to notify the same to the     Accessibility System by posting notification.
5. UIDevice class has got a new identifier specific to the vendor.
6. UIImage class includes new initialization methods using which it is possible to specify  the scale factor while creating an image.
7. Appearance customization support has been added to the following components
          a. UIBarButtonItem
          b. UIPageControl
          c. UISwitch
          d. UIPageViewController
          e. UIStepper
8. UITableView provides new simplified methods to create and manage cells.
9. Reloading of table data can be done with the help of new UIRefreshControl
10. New interfaces of UIViewController class supports the following
         a. Provide a clear way to track and manage interface rotation
         b. It is possible to prevent a segue from being triggered
         c. Unwinding of segues is now possible.
11. UINavigationBar can be subclassed to incorporate custom navigation bar in app

AV Foundation

The AV Foundation Framework (AVFoundation.framework) includes the following enhancements:
1. The AVPlayer class adds support syncing playback to an external time source. A single player
object can play both HTTP stream and file based local assets.
2. The new AVPlayerItemOutput class works with an AVPlayerItem object to get access to the
decoded video frames during playback so that application can process them if required.
3. AVAssetResourceLoader class allows inserting a delegate object into the asset loading
process.
4. The AVAudioSession class now exposes information about the current audio route in use.
This class also includes the following enhancements:
          a. Use of delegate to detect audio interrupt and changes has been deprecated in
              favour of new set of notifications.
          b. It now supports a new audio category AVAudioSessionMultipleRoute, that can be
              used to route audio to and from multiple audio hardware.
          c. A new mode AVAudioSessionModeMoviePlayback has been added. This engages
             appropriate output signal processing while playing movie.
5. The AVAudioMixInputParameters class provides access to an MTAudioProcessingTapRef
data type, which can be used to access audio data before it is read, played and exported.
6. AVCaptureConnection class allows enabling or disabling video stabilization on source video.
7. AVCaptureMetadataOutput class is a new addition and this class can intercept metadata
emitted by a capture connection.
8. There is another new class called AVMetadataFaceObject which reports the face-detection
data captured by an AVCaptureMetadataOutput object.
9. The AVAudioPlayer can play items from user’s iPod library using URLs obtained from the
MPMediaLibrary class.

Media Player

MPVolumeView class now provides an interface for customizing volume control. The images associated with the volume slider and track ball can be customized.

Image IO

Image IO framework (ImageIO.framework) has been added with a feature to read EXIF and IPTC metadata from images. Information can be read using functions associated CGImageSourceRef and CGImageDestinationRef opaque types.

iAd

iAd framework has got a new medium rectangle banner size on iPad devices.

External Accessory

External Accessory Framework (ExternalAccessory.framwork) includes interfaces for managing bluetooth connections. It’s now possible to detect available Bluetooth devices for pairing and display them.

Event Kit

Event Kit Framework (EventKit.framework) has been enriched with following features:

1. Reminders can be created directly using the framework
2. A calendar and Reminder event now holds an external identifier that lets multiple devices refer to the same event on server. The server provides the actual identifier, which can be accessed via calendarItemExternalIdentifier property of EKCalendarItem class.
3. It is possible to cancel editing pro grammatically from an EKEventEditViewController object.
4. Accessing calendar or reminder data shows alert to the user asking for permission.

Core Video

The Core Video Framework (CoreVideo.framework) now adds support of two new pixel
formats. These formats provide efficient storage for one-channel or two-channel images that interoperate with OpenGL ES. You should look at Apple’s Core Video Framework Reference (https://developer.apple.com/library/ios/#documentation/CoreVideo/ Reference/CVFrameworkRef/_index.html#//apple_ref/doc/uid/TP40010036) for more information.

Core Media

The Core Media Framework (CoreMedia.framework) includes two new types CMClockRef and CMTimerbaseRef. These define fundamental media time service behaviours.


Core Location

The following changes have been made to the Core Location Framework (CoreLocation.framework):

1. The framework now providers better accuracy while offline and driving.
2. It is possible to refine the accuracy based on usage by assigning appropriate value to the
activityType property of LMLocationManager class. This property distinguishes driving usage and fitness usage.
3. The CLLocationManager object now pauses deliver of location events when the user has
not moved for an extended period of time. This behaviour saves power by turning off the
GPS and other related hardware. This behaviour is enabled by default and can be controlled using pauseLocationUpdatesAutomatically property of the location manager object.

Core Bluetooth

Previously iOS device could only interact in central mode, but the Core Bluetooth Framework now (CoreBluetooth.framework) supports interacting in peripheral mode. It can advertise itself in peripheral mode and communicate with other Bluetooth devices.

Core Audio

Following changes have been made to the frameworks of Core Audio framework:
A new audio unit called AUDeferredRenderer has been added to the framework. This audio unit support processing of audio in a lower-priority thread using relatively large time slices.

Ad Support

This is a new framework (AdSupport.framework) that provides access to an identifier that app can use for advertisement processing. This framework also provides a flag that indicates whether the user has opted out of ad tracking. Apps must honor the opt-out flag before accessing the advertising
identifier.

Accelerate

The Accelerate framework includes new vector-scalar power functions, SSE-related vector functions, sine functions, vDSP functions, discrete cosine transform functions and vImage functions.

Guest Blogger

Anelei Ivanova: She is an eminent blog writer ,and have a good knowledge in the field of technology. She has written different articles based on IOS application development, Iphone application development, android application development and many more .This article is in the series of iOS 6 app development, with little more elaboration. Here the readers get depth knowledge on iOS 6 app development, which is new in the market, and also i blog occasionally  for Review at 8.
Post a Comment (0)
Previous Post Next Post