Map View (Apple framework) - Imtiaz211/interviews GitHub Wiki

What is CLLocation?

A CLLocation object contains the geographical location and altitude of a device, along with values indicating the accuracy of those measurements and when they were collected. In iOS, a location object also contains course information—that is, the speed and heading in which the device was moving.

What is CLPlacemark?

A CLPlacemark object stores placemark data for a given latitude and longitude. Placemark data includes information such as the country, state, city, and street address associated with the specified coordinate. It can also include points of interest and geographically related data.

What is GEOFencing?

  1. A Geofence is a technology that defines a virtual boundary around a real world geographical area. Every time the user enters or exits the boundary of a certain geofence, actions can be triggered in a location enabled device.
  2. CLGeocoder: This class provides the functionality to convert the coordinates into user-friendly representation. A user-friendly representation of coordinates consists of the name of the city, state, country etc..
  3. Reverse Geocode Location: This method is used to submit the location data to the geocode server asynchronously. This method takes a latitude and longitude value and returns the result in user readable format. This result is returned through the CLPlacemark object.
  4. Desired Accuracy : This property defines the accuracy of the location data.
  5. Distance Filter: It defines the minimum distance the device must move horizontally before update is generated."

What is CLLocationManager?

  1. The object that you use to start and stop the delivery of location-related events.
  2. It is a class that is the central point for configuring the delivery of location- and heading-related events to your app.
  3. Tracking large or small changes in the user’s current location with a configurable degree of accuracy.
  4. Reporting heading changes from the onboard compass. (iOS only).
  5. Monitoring distinct regions of interest and generating location events when the user enters or leaves those regions.
  6. Deferring the delivery of location updates while the app is in the background. (iOS only).
  7. Reporting the range to nearby beacons.
  8. A CLHeading object contains heading data generated by a CLLocationManager object.
  9. The CLRegion class defines an abstract area that can be tracked. In iOS, you do not create instances of this class directly; instead, you instantiate subclasses that define specific types of regions. Devices with a magnetometer can report the direction in which a device is pointing, also known as its heading Devices with GPS hardware can report the direction in which a device is moving, also known as its course.

Google Map offline ?

One of my favourite features of the Google Maps app is its ability to save offline maps on the iPhone. Whether you want map access regardless of cell reception or you’re traveling abroad and won’t have a data connection, Google Maps is king. Even better, it costs you absolutely nothing.

What is the location Service?

Applications such as Maps, camera, Calendar and compass are allowed to use the information from cellular, Wi-Fi and Global Positioning System networks for determining the approximate locations. The location is displayed on the screen, using a blue marker.

CLLocationManagerDelegates

  1. locationManager:didUpdateLocations:
  2. locationManager:didUpdateHeading:
  3. locationManagerShouldDisplayHeadingCalibration:
  4. locationManager:didDetermineState:forRegion:
  5. locationManager:didRangeBeacons:inRegion:
  6. locationManager:rangingBeaconsDidFailForRegion:withError:
  7. locationManager:didEnterRegion:
  8. locationManager:didExitRegion:
  9. locationManager:didFailWithError:
  10. locationManager:monitoringDidFailForRegion:withError:
  11. locationManager:didChangeAuthorizationStatus:
  12. locationManager:didStartMonitoringForRegion:
  13. locationManager:DidPauseLocationUpdates
  14. locationManager:DidResumeLocationUpdates
  15. locationManager:didFinishDeferredUpdatesWithError:
  16. locationManager:didVisit: