iOS Components and Frameworks
Home > Computing and Information Technology > Computer programming / software engineering > Programming and scripting languages: general > iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK
iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK

iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK

|
     0     
5
4
3
2
1




Out of Stock


Notify me when this book is in stock
About the Book

Take Your Next Leap Forward as an iOS App Developer! Covers iOS 7 and Xcode 5   iOS Components and Frameworks will help you leverage iOS’s powerful components and frameworks to build apps with outstanding performance, reliability, interactivity, media support, and customization.   Pioneering iOS developers Kyle Richter and Joe Keeley illuminate the sophisticated intermediate-to-advancedlevel techniques you’re now ready for. You’ll find example-rich coverage of topics ranging from social support to security, Core Data, TextKit, iCloud support, UIKit Dynamics, MapKit, and Passbook. There’s also a complete section on advanced performance and security, including the effective use of Grand Central Dispatch and Keychain.   Each chapter contains a complete sample project that walks you through integrating its technology into a typical iOS app. You’ll discover how multiple iOS features can be combined into exceptionally powerful apps and walk through a complete case study project: a fully functional game with complete Game Center integration.   Coverage includes: New physics-based animation effects provided by UIKit Dynamics Making the most of Core Location, MapKit, and Geofencing Leveraging Game Center features such as Leader Boards and Achievements Giving users access to their address and media libraries from within your app Using lightweight JSON to move data among servers, apps, and websites Syncing apps via iCloud using UIDocument and key-value store syncing Securing user data with Keychain Informing users of important app-related events via Notifications Storing and retrieving persistent data locally with Core Data Using advanced Objective-C features to write more manageable, concise apps Improving responsiveness through concurrency with Grand Central Dispatch Advanced text handling and display with TextKit Smoothly handling complex and continuous gestures Effective debugging techniques with Xcode 5 and Instruments Building passes for Passbook and PassKit If you’re a serious iOS developer who wants to build cutting-edge apps, iOS Components and Frameworks delivers the practical skills, reusable code, and expert insights you’re looking for.

Table of Contents:
1  UIKit Dynamics     1 Sample App     1 Introduction to UIKit Dynamics     2 Implementing UIKit Dynamics     3   Gravity     3   Collisions     4   Attachments     6   Springs     8   Snap     9   Push Forces     9   Item Properties     11 In-Depth UIDynamicAnimator and UIDynamicAnimatorDelegate     13 Summary     13 Exercises     14   2  Core Location, MapKit, and Geofencing     15 The Sample App     15 Obtaining User Location     15   Requirements and Permissions     16   Checking for Services     19   Starting Location Request     20   Parsing and Understanding Location Data     22   Significant Change Notifications     23   Using GPX Files to Test Specific Locations     24 Displaying Maps     26   Understanding the Coordinate Systems     26   MKMapKit Configuration and Customization     26   Responding to User Interactions     28 Map Annotations and Overlays     29   Adding Annotations     29   Displaying Standard and Custom Annotation Views     32   Draggable Annotation Views     35   Working with Map Overlays     36 Geocoding and Reverse-Geocoding     37   Geocoding an Address     37   Reverse-Geocoding a Location     41 Geofencing     44    Checking for Regional Monitoring Capability     44    Defining Boundaries     45    Monitoring Changes     46 Getting Directions     48 Summary     52 Exercises     53   3  Leaderboards     55 Whack-a-Cac     55   Spawning a Cactus     57   Cactus Interaction     60   Displaying Life and Score     62   Pausing and Resuming     63   Final Thoughts on Whack-a-Cac     64 iTunes Connect     65 Game Center Manager     68 Authenticating     70   Common Authentication Errors     71   iOS 6 Authentication     73 Submitting Scores     75   Adding Scores to Whack-a-Cac     78   Presenting Leaderboards     80   Score Challenges     82   Going Further with Leaderboards     84 Summary     86 Exercises     86   4  Achievements     87 iTunes Connect     87 Displaying Achievement Progress     89 Game Center Manager and Authentication     91 The Achievement Cache     91 Reporting Achievements     93 Adding Achievement Hooks     95   Completion Banners     96   Achievement Challenges     97   Adding Achievements into Whack-a-Cac     100   Earned or Unearned Achievements     101   Partially Earned Achievements     102   Multiple Session Achievements     104   Piggybacked Achievements and Storing Achievement Precision     105   Timer-Based Achievements     106 Resetting Achievements     107 Going Further with Achievements     108 Summary     110 Exercises     110   5  Getting Started with Address Book     111 Why Address Book Support Is Important     111 Limitations of Address Book Programming     112 Introduction to the Sample App     112 Getting Address Book Up and Running     112   Reading Data from the Address Book     115   Reading Multivalues from the Address Book     116   Understanding Address Book Labels     117   Working with Addresses     118 Address Book Graphical User Interface     120   People Picker     120 Programmatically Creating Contacts     125 Summary     128 Exercises     128   6  Working with Music Libraries     129 Introduction to the Sample App     129 Building a Playback Engine     131   Registering for Playback Notifications     131   User Controls     133   Handling State Changes     135   Duration and Timers     139   Shuffle and Repeat     140 Media Picker     141 Programmatic Picker     143   Playing a Random Song     144   Predicate Song Matching     145 Summary     147 Exercises     148   7  Working with and Parsing JSON     149 JSON     149   Benefits of Using JSON     149   JSON Resources     150 Sample App Overview     150 Accessing the Server     150 Getting JSON from the Server     151   Building the Request     151   Inspecting the Response     152   Parsing JSON     153   Displaying the Data     154 Posting a Message     155   Encoding JSON     156   Sending JSON to the Server     158 Summary     159 Exercise     159   8  Getting Started with iCloud     161 The Sample App     161 Setting Up the App for iCloud Support     162   Account Setup     162   Enabling iCloud Capabilities     163   Initializing iCloud     164 Introducing UIDocument     165   Subclassing UIDocument     165   Interacting with UIDocument     167 Interacting with iCloud     168   Listing Documents in iCloud     168   Detecting Conflicts in iCloud     172 Conflict Resolution     173 Key-Value Store Syncing     178 Summary     180 Exercises     180   9  Notifications     181 Differences Between Local and Push Notifications     181 Sample App     182 App Setup     182 Create Development Push SSL Certificate     184 Development Provisioning Profile     188 Custom Sound Preparation     194 Registering for Remote Notifications     194 Scheduling Local Notifications     196 Receiving Notifications     196 Push Notification Server     198 Basic Rails Setup     198 Add Support for Devices and Shouts     199 Device Controller     202 Shout Controller     202 Tying It All Together     204 Sending the Push Notifications     207 Handling APNs Feedback     207 Summary     208 Exercise     208   10  Bluetooth Networking with Game Kit     209 Limitations of Game Kit’s Bluetooth Networking     209 Benefits of Game Kit’s Bluetooth Networking     210 Sample App     210 The Peer Picker     215 Sending Data     218   Data Modes     219   Sending Data in the Sample App     219 Receiving Data     221   Receiving Data in the Sample App     221 State Changes     222 Advanced Features     223   Peer Display Name     223   Connecting Without the Peer Picker     223   Session Modes     225 Summary     225 Exercises     225   11  AirPrint     227 AirPrint Printers     227 Testing for AirPrint     229 Printing Text      229   Print Info     230   Setting Page Range     231   Error Handling     232   Starting the Print Job     232   Print Simulator Feedback     233 Print Center     234   UIPrintInteractionControllerDelegate     234 Printing Rendered HTML     236 Printing PDFs     237 Summary     239 Exercises     239   12  Core Data Primer     241 Deciding on Core Data     242 Core Data Managed Objects     243   Managed Objects     243   Managed Object Model     244   Managed Object Model Migrations     246   Creating Managed Objects     246   Fetching and Sorting Objects     247   Fetched Results Controller     248 The Core Data Environment     248   Persistent Store Coordinator     249   Persistent Store     249   Managed Object Context     249 Summary     250   13  Getting Up and Running with Core Data     251 Sample App     251 Starting a Core Data Project     252   Core Data Environment     254 Building Your Managed Object Model     256   Creating an Entity     257   Adding Attributes     257   Establishing Relationships     258   Custom Managed Object Subclasses     259 Setting Up Default Data     260   Inserting New Managed Objects     260   Other Default Data Setup Techniques     261 Displaying Your Managed Objects     262   Creating Your Fetch Request     262   Fetching by Object ID     264   Displaying Your Object Data     265   Using Predicates     267 Introducing the Fetched Results Controller     268   Preparing the Fetched Results Controller     268   Integrating Table View and Fetched Results Controller     271   Responding to Core Data Changes     273 Adding, Editing, and Removing Managed Objects     275   Inserting a New Managed Object     275   Removing a Managed Object     276   Editing an Existing Managed Object     277   Saving and Rolling Back Your Changes     278 Summary     279 Exercises     279   14  Language Features     281 Literals     282   Boxed Expressions     284 Automatic Reference Counting     285   Using ARC in a New Project     285   Converting an Existing Project to ARC     286   Basic ARC Usage     288   ARC Qualifiers     289 Blocks     290   Declaring and Using Blocks     290   Capturing State with Blocks     291   Using Blocks as Method Parameters     293   Memory, Threads, and Blocks     294 Properties     295   Declaring Properties     295   Synthesizing Properties     297   Accessing Properties     297   Dot Notation     298   Fast Enumeration     298 Method Swizzling     299 Summary     302 Exercises     302   15  Integrating Twitter and Facebook Using Social Framework     303 Social Integration     303 The Sample App     303 Logging In     304 Using SLComposeViewController     306 Posting with a Custom Interface     308   Posting to Twitter     308   Posting to Facebook     312   Creating a Facebook App     312 Accessing User Timelines     318   Twitter     318   Facebook     324 Summary     328 Exercises     328   16  Working with Background Tasks     329 The Sample App     330 Checking for Background Availability     330 Finishing a Task in the Background     331   Background Task Identifier     332   Expiration Handler     333   Completing the Background Task     333 Implementing Background Activities     335   Types of Background Activities     335   Playing Music in the Background     336 Summary     340 Exercises     340   17  Grand Central Dispatch for Performance     341 The Sample App     341 Introduction to Queues     343 Running on the Main Thread     343 Running in the Background     345 Running in an Operation Queue     347   Concurrent Operations     347   Serial Operations     349   Canceling Operations     350   Custom Operations     351 Running in a Dispatch Queue     353   Concurrent Dispatch Queues     353   Serial Dispatch Queues     355 Summary     357 Exercises     358   18  Using Keychain to Secure Data     359 Introduction to the Sample App     360 Setting Up and Using Keychain     360   Setting Up a New KeychainItemWrapper     361   Storing and Retrieving the PIN     362   Keychain Attribute Keys     363   Securing a Dictionary     364   Resetting a Keychain Item     366   Sharing a Keychain Between Apps     367   Keychain Error Codes     368 Summary     368 Exercises     369   19  Working with Images and Filters     371 The Sample App     371 Basic Image Data and Display     371   Instantiating an Image     372   Displaying an Image     373   Using the Image Picker     375   Resizing an Image     378 Core Image Filters     379   Filter Categories and Filters     379   Filter Attributes     382   Initializing an Image     384   Rendering a Filtered Image     385   Chaining Filters     386 Face Detection     387   Setting Up a Face Detector     388   Processing Face Features     388 Summary     390 Exercises     391   20  Collection Views     393 The Sample App     393 Introducing Collection Views     394   Setting Up a Collection View     395   Implementing the Collection View Data Source Methods     396   Implementing the Collection View Delegate Methods     399 Customizing Collection View and Flow Layout     401   Basic Customizations     401   Decoration Views     402 Creating Custom Layouts     406 Collection View Animations     411   Collection View Layout Changes     411   Collection View Layout Animations     412   Collection View Change Animations     414 Summary     415 Exercises     415   21  Introduction to TextKit     417 Sample App     417   Introducing NSLayoutManager     418 NSTextStore     418 Detecting Links Dynamically     421 Detecting Hits     422 Exclusion Paths     423 Content Specific Highlighting     425 Changing Font Settings with Dynamic Type     429 Summary     431 Exercises     431   22  Gesture Recognizers     433 Types of Gesture Recognizers     433 Basic Gesture Recognizer Usage     434 Introduction to the Sample App     434   Tap Recognizer in Action     435   Pinch Recognizer in Action     436 Multiple Recognizers for a View     438   Gesture Recognizers: Under the Hood     440   Multiple Recognizers for a View: Redux     441   Requiring Gesture Recognizer Failures     443 Custom UIGestureRecognizer Subclasses     444 Summary     445 Exercise     445   23  Accessing Photo Libraries     447 Sample App     447 The Assets Library     448 Enumerating Asset Groups and Assets     448   Permissions     449   Groups     451   Assets     455 Displaying Assets     458 Saving to the Camera Roll     462 Dealing with Photo Stream     465 Summary      467 Exercises     467   24  Passbook and PassKit     469 The Sample App     470 Designing the Pass     470   Pass Types     471   Pass Layout—Boarding Pass     471   Pass Layout—Coupon     471   Pass Layout—Event     472   Pass Layout—Generic     473   Pass Layout—Store Card     474   Pass Presentation     474 Building the Pass     476   Basic Pass Identification     477   Pass Relevance Information     478   Barcode Identification     478   Pass Visual Appearance Information     479   Pass Fields     479 Signing and Packaging the Pass     482   Creating the Pass Type ID     482   Creating the Pass Signing Certificate     484   Creating the Manifest     489   Signing and Packaging the Pass     489   Testing the Pass     490   Interacting with Passes in an App     490 Updating Passes Automatically     501 Summary     502 Exercises     502   25  Debugging and Instruments     503 Introduction to Debugging     503     The First Computer Bug     504   Debugging Basics with Xcode     504 Breakpoints     506   Customizing Breakpoints     507   Symbolic and Exception Breakpoints     508   Breakpoint Scope     508 Working with the Debugger     509 Instruments     511   The Instruments Interface     512   Exploring Instruments: The Time Profiler     514   Exploring Instruments: Leaks     516   Going Further with Instruments     519 Summary     519 Exercises     520   Index     521


Best Sellers


Product Details
  • ISBN-13: 9780133086904
  • Binding: Digital download
  • Sub Title: Understanding the Advanced Features of the iOS SDK
  • ISBN-10: 0133086909
  • Language: English
  • Weight: 1 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK
-
iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

iOS Components and Frameworks: Understanding the Advanced Features of the iOS SDK

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!