Mastering iOS Frameworks
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Home > Computing and Information Technology > Computer programming / software engineering > Apps programming > Mastering iOS Frameworks: Beyond the Basics
Mastering iOS Frameworks: Beyond the Basics

Mastering iOS Frameworks: Beyond the Basics


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

Mastering iOS Frameworks will help intermediate-to-advanced level students leverage iOS’s powerful components and frameworks to build apps with outstanding performance, reliability, interactivity, media support, and customization. Example-rich coverage of topics ranges from social support to security, Core Data, networking and iCloud, and graphics and interface. Each chapter contains a complete sample project that walks students through integrating its technology into a typical iOS app.

Table of Contents:
1 UIKit Dynamics 1 The Sample App 1 Introduction to UIKit Dynamics 2 Implementing UIKit Dynamics 3 Gravity 3 Collisions 4 Attachments 7 Springs 8 Snap 9 Push Forces 10 Item Properties 11 In-Depth UIDynamicAnimator and UIDynamicAnimatorDelegate 13 Summary 14 2 Core Location, MapKit, and Geofencing 15 The Sample App 15 Obtaining User Location 16 Requirements and Permissions 16 Checking for Services 19 Starting Location Request 19 Parsing and Understanding Location Data 22 Significant Change Notifications 23 Using GPX Files to Test Specific Locations 23 Displaying Maps 25 Understanding the Coordinate Systems 25 MKMapKit Configuration and Customization 25 Responding to User Interactions 27 Map Annotations and Overlays 28 Adding Annotations 28 Displaying Standard and Custom Annotation Views 31 Draggable Annotation Views 34 Working with Map Overlays 35 Geocoding and Reverse-Geocoding 36 Geocoding an Address 36 Reverse-Geocoding a Location 40 Geofencing 43 Checking for Regional Monitoring Capability 43 Defining Boundaries 44 Monitoring Changes 45 Getting Directions 47 Summary 52 3 Leaderboards 53 The Sample App 53 Spawning a Cactus 55 Cactus Interaction 58 Displaying Life and Score 60 Pausing and Resuming 62 Final Thoughts on Whack-a-Cac 63 iTunes Connect 63 Game Center Manager 66 Authenticating 68 Common Authentication Errors 69 iOS 6 and Newer Authentication 71 Submitting Scores 73 Adding Scores to Whack-a-Cac 76 Presenting Leaderboards 77 Score Challenges 79 Going Further with Leaderboards 81 Summary 83 4 Achievements 85 iTunes Connect 85 Displaying Achievement Progress 87 Game Center Manager and Authentication 88 The Achievement Cache 89 Reporting Achievements 90 Adding Achievement Hooks 92 Completion Banners 93 Achievement Challenges 94 Adding Achievements into Whack-a-Cac 97 Earned or Unearned Achievements 98 Partially Earned Achievements 99 Multiple Session Achievements 101 Piggybacked Achievements and Storing Achievement Precision 102 Timer-Based Achievements 103 Resetting Achievements 104 Going Further with Achievements 105 Summary 107 5 Getting Started with Address Book 109 Why Address Book Support Is Important 109 Limitations of Address Book Programming 110 The Sample App 110 Getting Address Book Up and Running 111 Reading Data from the Address Book 113 Reading Multivalues from the Address Book 114 Understanding Address Book Labels 115 Working with Addresses 116 Address Book Graphical User Interface 118 People Picker 118 Programmatically Creating Contacts 123 Summary 126 6 Working with Music Libraries 127 The Sample App 127 Building a Playback Engine 129 Registering for Playback Notifications 129 User Controls 131 Handling State Changes 132 Duration and Timers 137 Shuffle and Repeat 138 Media Picker 138 Programmatic Picker 141 Playing a Random Song 141 Predicate Song Matching 142 Summary 144 7 Implementing HealthKit 145 Introduction to HealthKit 145 Introduction to Health.app 146 The Sample App 147 Adding HealthKit to a Project 148 Requesting Permission for Health Data 149 Reading Characteristic HealthKit Data 152 Reading and Writing Basic HealthKit Data 152 Reading and Writing Complex HealthKit Data 155 Summary 160 8 Implementing HomeKit 161 The Sample App 161 Introduction to HomeKit 162 Setting Up HomeKit Components 162 Developer Account Setup 163 Enabling HomeKit Capability 163 Home Manager 164 Home 166 Rooms and Zones 168 Accessories 170 Services and Service Groups 176 Actions and Action Sets 178 Testing with the HomeKit Accessory Simulator 179 Scheduling Actions with Triggers 181 Summary 181 9 Working with and Parsing JSON 183 JSON 183 Benefits of Using JSON 183 JSON Resources 184 The Sample App 184 Accessing the Server 184 Getting JSON from the Server 185 Building the Request 185 Inspecting the Response 186 Parsing JSON 186 Displaying the Data 187 Posting a Message 189 Encoding JSON 189 Sending JSON to the Server 191 Summary 193 10 Notifications 195 Differences Between Local and Push Notifications 195 The Sample App 196 App Setup 196 Creating Development Push SSL Certificate 200 Development Provisioning Profile 203 Custom Sound Preparation 208 Registering for Notifications 209 Scheduling Local Notifications 211 Receiving Notifications 212 Push Notification Server 213 Sending the Push Notifications 214 Handling APNs Feedback 215 Summary 216 11 Cloud Persistence with CloudKit 217 CloudKit Basics 217 The Sample App 218 Setting Up a CloudKit Project 218 Account Setup 218 Enabling iCloud Capabilities 220 CloudKit Concepts 220 Containers 220 Databases 221 Records 221 Record Zones 222 Record Identifiers 222 Assets 222 CloudKit Basic Operations 222 Fetching Records 223 Create and Save a Record 224 Update and Save a Record 226 Subscriptions and Push 227 Push Setup 227 Subscribing to Data Changes 227 User Discovery and Management 229 Managing Data in the Dashboard 233 Summary 235 12 Extensions 237 Types of Extensions 237 Today 237 Share 238 Action 238 Photo Editing 238 Document Provider 238 Custom Keyboard 238 Understanding Extensions 238 API Limitations 239 Creating Extensions 240 Today Extension 242 Sharing Code and Information between Host App and Extension 243 Apple Watch Extension 244 Summary 247 13 Handoff 249 The Sample App 249 Handoff Basics 249 Implementing Handoff 251 Creating the User Activity 252 Continuing an Activity 253 Implementing Handoff in Document-Based Apps 255 Summary 257 14 AirPrint 259 AirPrint Printers 259 Testing for AirPrint 261 Printing Text 261 Print Info 262 Setting Page Range 263 UISimpleTextPrintFormatter 263 Error Handling 264 Starting the Print Job 264 Printer Simulator Feedback 265 Print Center 266 UIPrintInteractionControllerDelegate 267 Printing Rendered HTML 268 Printing PDFs 269 Summary 270 15 Getting Up and Running with Core Data 271 Deciding on Core Data 272 Sample App 273 Starting a Core Data Project 274 Core Data Environment 275 Building Your Managed Object Model 278 Creating an Entity 280 Adding Attributes 280 Establishing Relationships 281 Custom Managed Object Subclasses 282 Setting Up Default Data 282 Inserting New Managed Objects 282 Other Default Data Setup Techniques 284 Displaying Your Managed Objects 285 Creating Your Fetch Request 285 Fetching by Object ID 287 Displaying Your Object Data 288 Using Predicates 290 Introducing the Fetched Results Controller 292 Preparing the Fetched Results Controller 292 Integrating Table View and Fetched Results Controller 294 Responding to Core Data Changes 296 Adding, Editing, and Removing Managed Objects 299 Inserting a New Managed Object 299 Removing a Managed Object 300 Editing an Existing Managed Object 301 Saving and Rolling Back Your Changes 301 Summary 303 16 Integrating Twitter and Facebook Using Social Framework 305 The Sample App 305 Logging In 306 Using SLComposeViewController 308 Posting with a Custom Interface 311 Posting to Twitter 311 Posting to Facebook 315 Creating a Facebook App 315 Accessing User Timelines 322 Twitter 322 Facebook 327 Summary 331 17 Working with Background Tasks 333 The Sample App 334 Checking for Background Availability 334 Finishing a Task in the Background 335 Background Task Identifier 336 Expiration Handler 337 Completing the Background Task 337 Implementing Background Activities 339 Types of Background Activities 339 Playing Music in the Background 340 Summary 344 18 Grand Central Dispatch for Performance 345 The Sample App 345 Introduction to Queues 347 Running on the Main Thread 347 Running in the Background 349 Running in an Operation Queue 351 Concurrent Operations 351 Serial Operations 353 Canceling Operations 354 Custom Operations 355 Running in a Dispatch Queue 357 Concurrent Dispatch Queues 357 Serial Dispatch Queues 359 Summary 361 19 Using Keychain and Touch ID to Secure and Access Data 363 The Sample App 364 Setting Up and Using Keychain 364 Setting Up a New KeychainItemWrapper 365 Storing and Retrieving the PIN 366 Keychain Attribute Keys 367 Securing a Dictionary 368 Resetting a Keychain Item 370 Sharing a Keychain Between Apps 370 Keychain Error Codes 372 Implementing Touch ID 372 Summary 374 20 Working with Images and Filters 375 The Sample App 375 Basic Image Data and Display 376 Instantiating an Image 376 Displaying an Image 377 Using the Image Picker 379 Resizing an Image 382 Core Image Filters 383 Filter Categories and Filters 383 Filter Attributes 386 Initializing an Image 388 Rendering a Filtered Image 389 Chaining Filters 390 Feature Detection 391 Setting Up a Face Detector 391 Processing Face Features 392 Summary 394 21 Collection Views 395 The Sample App 395 Introducing Collection Views 396 Setting Up a Collection View 397 Implementing the Collection View Data Source Methods 398 Implementing the Collection View Delegate Methods 401 Customizing Collection View and Flow Layout 403 Basic Customizations 403 Decoration Views 405 Creating Custom Layouts 408 Collection View Animations 413 Collection View Layout Changes 413 Collection View Layout Animations 414 Collection View Change Animations 416 Summary 417 22 Introduction to TextKit 419 The Sample App 420 Introducing NSLayoutManager 420 Detecting Links Dynamically 423 Detecting Hits 424 Exclusion Paths 425 Content Specific Highlighting 427 Changing Font Settings with Dynamic Type 432 Summary 433 23 Gesture Recognizers 435 Types of Gesture Recognizers 435 Basic Gesture Recognizer Usage 436 Introduction to the Sample App 437 Tap Recognizer in Action 438 Pinch Recognizer in Action 440 Multiple Recognizers for a View 441 Gesture Recognizers: Under the Hood 443 Multiple Recognizers for a View: Redux 444 Requiring Gesture Recognizer Failures 446 Custom UIGestureRecognizer Subclasses 448 Summary 448 24 Accessing the Photo Library 449 The Sample App 449 The Photos Framework 450 Using Asset Collections and Assets 451 Permissions 451 Asset Collections 453 Assets 457 Changes in the Photo Library 459 Asset Collection Changes 459 Asset Changes 462 Dealing with Photo Stream 464 Summary 465 25 Passbook and PassKit 467 The Sample App 468 Designing the Pass 468 Pass Types 469 Pass Layout–Boarding Pass 469 Pass Layout–Coupon 470 Pass Layout–Event 471 Pass Layout–Generic 471 Pass Layout–Store Card 472 Pass Presentation 473 Building the Pass 474 Basic Pass Identification 476 Pass Relevance Information 476 Barcode Identification 477 Pass Visual Appearance Information 478 Pass Fields 478 Signing and Packaging the Pass 481 Creating the Pass Type ID 481 Creating the Pass Signing Certificate 483 Creating the Manifest 488 Signing and Packaging the Pass 489 Testing the Pass 489 Interacting with Passes in an App 491 Updating Passes Automatically 501 Summary 502 26 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 510 The Instruments Interface 512 Exploring Instruments: The Time Profiler 514 Exploring Instruments: Leaks 516 Going Further with Instruments 519 Summary 519 Index 521

About the Author :
Kyle Richter is the Chief Executive Officer at MartianCraft, an award-winning Mobile Development Studio. Kyle began developing software in the early 1990s and has always been dedicated to the Apple ecosystem. He has authored and coauthored several books on iOS development, includingBeginning iOS Game Center Development, Beginning Social Game Development, andiOS Components and Frameworks. Between running day-to-day operations at MartianCraft, Kyle travels the world speaking on development and entrepreneurship. He currently calls the Florida Keys home, where he spends his time with his border collie. He can be found on Twitter at @kylerichter.   Joe Keeley is a Partner and Lead Engineer at MartianCraft. Joe provides technical leadership on iOS projects for clients, and has led a number of successful client projects to completion. He has liked writing code since first keying on an Apple II, and has worked on a wide variety of technology and systems projects in his career. Joe has presented several technical topics at iOS and Mac conferences around the U.S. Joe lives in Denver, Colorado, with his wife and two daughters, and hopes to get back into competitive fencing again in his spare time. He can be reached on Twitter at @jwkeeley.


Best Sellers


Product Details
  • ISBN-13: 9780134052496
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison-Wesley Educational Publishers Inc
  • Height: 228 mm
  • No of Pages: 576
  • Sub Title: Beyond the Basics
  • Width: 179 mm
  • ISBN-10: 0134052498
  • Publisher Date: 07 May 2015
  • Binding: Paperback
  • Language: English
  • Spine Width: 31 mm
  • Weight: 906 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Mastering iOS Frameworks: Beyond the Basics
Pearson Education (US) -
Mastering iOS Frameworks: Beyond the Basics
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.

Mastering iOS Frameworks: Beyond the Basics

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

    Fresh on the Shelf


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!