PWMapKit SDK for iOS
PWMapKit is a comprehensive indoor mapping and wayfinding SDK that allows easy integration with Phunware's indoor maps and location-based services. Visit http://maas.phunware.com/ for more details and to sign up.
- MaaSCore v1.3.0 or greater
- iOS 7.0 or greater
- Xcode 6 or greater
Phunware recommends using CocoaPods to integrate the framework. Simply add
pod 'PWMapKit' to your podfile.
Alternatively, all of the following frameworks can be added to the Vendor/Phunware directory of your project:
Framework documentation is included in the the repository's
Documents folder in both HTML and Docset formats. You can also find the latest documentation online.
The framework comes with a ready-to-use sample applications. In order to use this application you will need to update the configuration with your MaaS credentials and location provider information.
- Navigate ot the sample application directory and run
pod installfrom the command line.
- Update your MaaS credentials and set up the building identifier in
- Update the location provider initializers in
The primary use of the components of PWMapKit revolve around creating a map view, displaying points of interest, showing the user's location and indoor routing.
Adding Indoor Maps to a Map View
PWMapView *map = [[PWMapView alloc] initWithFrame:<#frame#> buildingID:<#buildingID#>]; map.delegate = self; [self.view addSubview:map]; ... // Load a different building. [mapView loadBuilding:<#buildingID#>];
The associated PWLocation framework implements an abstract indoor location manager protocol very similar to
CLLocationManager which can be used to provide indoor location monitoring. PWSLLocationManager implements this protocol to provide BLE-based indoor location information using SenionLab beacons.
PWSLLocationManager *locationManager = [[PWSLLocationManager alloc] initWithMapIdentifier:<#map-UUID#> customerIdentifier:<#customer-UUID#>]; [locationManager setFloorIDMapping:<#mapping#>]; [map registerIndoorLocationManager:locationManager]; map.showsIndoorUserLocation = YES;
The indoor routing APIs have been redesigned for simplicity.
Routing Between Points of Interest and Indoor Locations
See this article for how to perform indoor routing with the PWMapKit SDK.
PWMapKit uses the following third-party components. All components are prefixed with
PW to avoid namespace collisions should your application also use an included component.
|SVPulsingAnnotationView||A customizable MKUserLocationView replica for your iOS app.||MIT|