iPhone Location Aware Apps by Example - Beginner's Guide

Build five complete location-enabled apps from scratch—from idea to implementation! with this book and ebook

iPhone Location Aware Apps by Example - Beginner's Guide

Beginner's Guide
Zeeshan Chawdhary

Build five complete location-enabled apps from scratch—from idea to implementation! with this book and ebook
$10.00
$49.99
RRP $29.99
RRP $49.99
eBook
Print + eBook
$12.99 p/month

Get Access

Get Unlimited Access to every Packt eBook and Video course

Enjoy full and instant access to over 3000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

+ Collection
Free Sample

Book Details

ISBN 139781849692243
Paperback386 pages

About This Book

  • Gain in depth knowledge of the location-based world, using real world examples.
  • Master the new iOS 5 Location Simulator to fine tune your apps.
  • Implement the best of the Location APIs and SDKs available now and incorporate them in your apps

Who This Book Is For

Novice to professional level iOS programmers who want to master location awareness and augmented reality. Build five practical location-based iOS Apps from scratch, a first for any book, converting learning into actual implementation.

Table of Contents

Chapter 1: The Location-based World
Understanding Location-based Services
Time for action — consuming Location-based Services with Google
Buzzwords in the Location-based Industry
Application of LBS and common use cases
How Apple uses LBS in the iPhone, iPad, and iPod devices
Time for action — turning off Location Tracking in your iPhone
Behind LBS — GPS
Push and Pull methods of Location Services
Life without GPS: Wi-Fi-based location detection
Life without GPS: cell ID positioning and cell tower triangulation
Time for action — using the SkyHook Wireless Loki framework to determine your location
Life without GPS: Google Maps API
Understanding Indoor and Outdoor Navigation
Summary
Chapter 2: The Xcoder's World
Introducing Xcode 4
Xcode 4: Prerequisites and features
iOS 5 and Xcode 4.2: new and notable features
Transitioning from Xcode3: What you need to know
Time for action — installation
Time for action — Hello Location
Tools for the overnight coders: HTML5
Time for action — using PhoneGap to build a Hello Location App
Time for action — using Titanium Appcelerator for building the Hello Location app
Time for action — Hello Location with Sencha Touch
Exploring location-based SDKs/APIs
Still more tools: SimpleGeo and Factual
Summary
Chapter 3: Using Location in your iOS Apps — Core Location
Core Location framework an — overview
Time for action — location debugging
Core location services
Core Location Manager — CLLocationManager
Time for action — checking for location service availability
Time for action — using Core Location with user authorization
The CLLocation object
Time for action — receiving location updates in your application
Time for action — boundary monitoring with Location Manager
Extending Hello Location for nearby events
Time for action — extending Hello Location for nearby events
Time for action — Last.fm API in your app
What just happened?
Extending Hello Location for local search
Time for action — building a local search app with foursquare
Summary
Chapter 4: Using Maps in your iOS apps MapKit
Overview of the MapKit framework
Understanding map geometry
Time for action — using MapKit in your app
Time for action — using map gestures panning and zooming
Annotating Maps an overview
Time for action — adding annotations to your maps
Time for action — draggable annotations
Time for action — custom map annotations
Map overlays an overview
Time for action — customizing map annotations
User tracking modes
Bonus — offline maps in your app
Time for action — using OpenStreetMaps with CloudMade API
Summary
Chapter 5: Weather App WeatherPackt
Storing and retrieving the user's location with SQLite
Time for action — storing and retrieving the user's location with SQLite
Converting location data into city name — using Geonames API
Time for action — converting location data into city name
Consuming the WeatherBug API
Time for action — using WeatherBug API
Building your Weather App: WeatherPackt
Define the Home screen
Time for action — defining the Home screen
Bonus: building WeatherPackt with PhoneGap
Bonus: text-to-speech
Summary
Chapter 6: Events App — PacktEvents
PacktEvents: Overview and architecture
Storing and Retrieving Events with SQLite
Time for action — storing and retrieving events with SQLite
Plotting events on a map
Time for action — plotting events on a map
Filtering Events display by Event Categories
Time for action — filtering Events by categories
Using the Event Kit framework to add events to your iPhone calendar
Time for action — adding events to your iPhone calendar
Using the Twitter framework
Time for action — adding Twitter capabilities to your iPhone app
Bonus: using the Layar Player API in your app: Augmented Reality
Time for action — adding Augmented Reality to your iPhone app
PacktEvents: building the app
Summary
Chapter 7: Advanced Topics
Using directions with location
Time for action — using heading for direction in your app
Time for action — using course for direction in your app
Core Motion: Motion Manager
Time for action — using MotionManager: accelerometer
Background app execution
Time for action — using local notifications
Summary
Chapter 8: Local Search PacktLocal
Consuming the foursquare venue API
Time for action — consuming the foursquare venue API - categories
Recommended and popular venues
Time for action — recommended and popular venues
Search for venues
Time for action — exploring the foursquare Search API
Building an UI for our local search app - PacktLocal
Saving venue information on the device
Building the app: PacktLocal
Time for action — building the app - PacktLocal
Summary
Chapter 9: Location Aware News — PacktNews
Understanding the Patch News API — HyperLocal News
Time for action — consuming the Patch News API
Time for action — adding the Geo Fencing support
Building our app - PacktNews
Time for action — building PacktNews
Summary
Chapter 10: Social Governance — TweetGovern
Social governance — an overview
TweetGovern — behind the scenes
Time for action — creating the UI for TweetGovern
Time for action — detecting the user location and showing nearby issues
Time for action — creating and voting for an issue
Summary

What You Will Learn

  • Learn everything about Location Based Services from concept to implementation in the real world.
  • Build your own Foursquare type app using the Foursquare API.
  • Discover Core Location and different techniques of location detection.
  • Explore the MapKit and 3rd Party Maps API with OpenStreetMaps
  • Build your own weather app, with Text to Speech.
  • Build your own events App, with EventKit and augmented reality.
  • Create a location based news App using AOL Patch News API
  • Create a social governance app from scratch.

In Detail

From weather apps which give you a forecast based on your current location to fitness apps which track your speed and distance travelled. From Google Maps to Foursquare. Increasing mobility and social networking has made location awareness an integral aspect of modern iPhone applications.

This book will teach you everything you need to know about building iPhone location aware apps, from simple Google maps to complex region monitoring and augmented reality. Build five real world location aware apps and get a taste of HTML5-based mobile app development.

The book begins by explaining behind-the-scenes working of location-based systems, including GPS. Explore in depth iOS Core Location and the MapKit Framework, using examples depicting each capability of the respective frameworks. Having learnt about location and maps, you will build five location-based apps using the APIs and SDKs publicly available. The book has everything for a beginner as well as advanced users, with chapters devoted to advanced topics such as push notifications, geo fencing and augmented reality.

Authors

Table of Contents

Chapter 1: The Location-based World
Understanding Location-based Services
Time for action — consuming Location-based Services with Google
Buzzwords in the Location-based Industry
Application of LBS and common use cases
How Apple uses LBS in the iPhone, iPad, and iPod devices
Time for action — turning off Location Tracking in your iPhone
Behind LBS — GPS
Push and Pull methods of Location Services
Life without GPS: Wi-Fi-based location detection
Life without GPS: cell ID positioning and cell tower triangulation
Time for action — using the SkyHook Wireless Loki framework to determine your location
Life without GPS: Google Maps API
Understanding Indoor and Outdoor Navigation
Summary
Chapter 2: The Xcoder's World
Introducing Xcode 4
Xcode 4: Prerequisites and features
iOS 5 and Xcode 4.2: new and notable features
Transitioning from Xcode3: What you need to know
Time for action — installation
Time for action — Hello Location
Tools for the overnight coders: HTML5
Time for action — using PhoneGap to build a Hello Location App
Time for action — using Titanium Appcelerator for building the Hello Location app
Time for action — Hello Location with Sencha Touch
Exploring location-based SDKs/APIs
Still more tools: SimpleGeo and Factual
Summary
Chapter 3: Using Location in your iOS Apps — Core Location
Core Location framework an — overview
Time for action — location debugging
Core location services
Core Location Manager — CLLocationManager
Time for action — checking for location service availability
Time for action — using Core Location with user authorization
The CLLocation object
Time for action — receiving location updates in your application
Time for action — boundary monitoring with Location Manager
Extending Hello Location for nearby events
Time for action — extending Hello Location for nearby events
Time for action — Last.fm API in your app
What just happened?
Extending Hello Location for local search
Time for action — building a local search app with foursquare
Summary
Chapter 4: Using Maps in your iOS apps MapKit
Overview of the MapKit framework
Understanding map geometry
Time for action — using MapKit in your app
Time for action — using map gestures panning and zooming
Annotating Maps an overview
Time for action — adding annotations to your maps
Time for action — draggable annotations
Time for action — custom map annotations
Map overlays an overview
Time for action — customizing map annotations
User tracking modes
Bonus — offline maps in your app
Time for action — using OpenStreetMaps with CloudMade API
Summary
Chapter 5: Weather App WeatherPackt
Storing and retrieving the user's location with SQLite
Time for action — storing and retrieving the user's location with SQLite
Converting location data into city name — using Geonames API
Time for action — converting location data into city name
Consuming the WeatherBug API
Time for action — using WeatherBug API
Building your Weather App: WeatherPackt
Define the Home screen
Time for action — defining the Home screen
Bonus: building WeatherPackt with PhoneGap
Bonus: text-to-speech
Summary
Chapter 6: Events App — PacktEvents
PacktEvents: Overview and architecture
Storing and Retrieving Events with SQLite
Time for action — storing and retrieving events with SQLite
Plotting events on a map
Time for action — plotting events on a map
Filtering Events display by Event Categories
Time for action — filtering Events by categories
Using the Event Kit framework to add events to your iPhone calendar
Time for action — adding events to your iPhone calendar
Using the Twitter framework
Time for action — adding Twitter capabilities to your iPhone app
Bonus: using the Layar Player API in your app: Augmented Reality
Time for action — adding Augmented Reality to your iPhone app
PacktEvents: building the app
Summary
Chapter 7: Advanced Topics
Using directions with location
Time for action — using heading for direction in your app
Time for action — using course for direction in your app
Core Motion: Motion Manager
Time for action — using MotionManager: accelerometer
Background app execution
Time for action — using local notifications
Summary
Chapter 8: Local Search PacktLocal
Consuming the foursquare venue API
Time for action — consuming the foursquare venue API - categories
Recommended and popular venues
Time for action — recommended and popular venues
Search for venues
Time for action — exploring the foursquare Search API
Building an UI for our local search app - PacktLocal
Saving venue information on the device
Building the app: PacktLocal
Time for action — building the app - PacktLocal
Summary
Chapter 9: Location Aware News — PacktNews
Understanding the Patch News API — HyperLocal News
Time for action — consuming the Patch News API
Time for action — adding the Geo Fencing support
Building our app - PacktNews
Time for action — building PacktNews
Summary
Chapter 10: Social Governance — TweetGovern
Social governance — an overview
TweetGovern — behind the scenes
Time for action — creating the UI for TweetGovern
Time for action — detecting the user location and showing nearby issues
Time for action — creating and voting for an issue
Summary

Book Details

ISBN 139781849692243
Paperback386 pages
Read More