← All SDKs and distributions

MapplsCamera SDK for iOS

A Mappls sdk for maps, search places, tracking telematics, offline automotive, capture feedback, identity platform across iOS.

currentSource Ready After Validationstateless
Source Ready After Validation

Compatibility decision

Use as current source evidence, then pin and validate the exact package, endpoint, authentication, entitlement, region, and release pairing before production.

Repository content, activity, code fragments, and local correspondence are discovery evidence only. They do not establish a supported package coordinate, binary identity, current version, account entitlement, runtime pairing, production compatibility, or approval.
PlatformiOSSwift
Source activityActiveLast repository push 2026-08-04
CorrespondenceUnmatched0 minimized local candidates; candidates are not compatibility proof
Captured documentation33 sections6 source samples · 23 endpoint signals

Install and configuration guidance

These statements are reproduced as normalized repository evidence. Validate coordinates and versions before copying them into a project.

5 matching sections

Dependencies

This library depends upon several Mappls's own libraries. All dependent libraries will be automatically installed using Swift Package Manager.

Below are list of dependencies which are required to run this SDK: - MapplsAPICore - Authorization and Authentcation - MapplsAPIKit - Core API functionality - MapplsMap - Map display and location services

Requirements

• iOS: 13.0 or higher - Xcode: 14.0 or higher - Mappls API Keys: You must have a valid Mappls API key to use the location and mapping features

Option 2: Configuration Presets

Pre-built configurations for common use cases:

| Method | Description | Use Case | | basic() | Default settings | Quick start | | photoOnly() | Photo mode only | Image documentation | | videoOnly() | Video mode only | Video surveys | | highAccuracy() | Requires GPS ≤10m | Precision mapping | | fieldSurvey() | All metadata + grid | Field work | | qrScanner() | QR code mode | Asset tracking | | highQuality() | 4K, max quality | Professional use | | minimalUI() | Hidden controls | Embedded use | | privacyFocused() | Minimal metadata | Privacy apps |

Configuration API Reference

MapplsCameraViewController provides a wide range of properties to customize the capture experience.

General Configuration

| Property | Type | Default | Description | | minimumAccuracyMetres | Float | 50.0 | Minimum GPS accuracy required to allow capture | | blockCaptureOnPoorAccuracy | Bool | false | If true, prevents capture when accuracy is worse than threshold | | saveToDeviceGallery | Bool | true | Automatically save captured media to the iOS Photo Library | | enablePinchToZoom | Bool | true | Enable or disable the pinch-to-zoom gesture | | maxZoomFactor | Float | 8.0 | Maximum zoom level allowed |

Source code evidence

Use these fragments to understand integration shape. They may belong to an older toolchain or authentication generation.

6 shown
Swift Package ManagerText
https://github.com/mappls-api/mappls-camera-ios-distribution.git
1. Import the SDKSwift
import MapplsCamera
2. Initialize and PresentSwift
let cameraVC = MapplsCameraViewController()
cameraVC.cameraDelegate = self
cameraVC.modalPresentationStyle = .fullScreen
self.present(cameraVC, animated: true)
3. Implement the DelegateSwift
extension YourViewController: MapplsCameraDelegate {
    func mapplsCamera(_ controller: MapplsCameraViewController, didCaptureImage result: MapplsCameraResult) {
        print("Captured image at: \(result.filePath)")
        print("Location: \(result.latitude), \(result.longitude)")
        controller.dismiss(animated: true)
    }

    func mapplsCamera(_ controller: MapplsCameraViewController, didRecordVideo result: MapplsCameraResult) {
        print("Recorded video at: \(result.filePath)")
        controller.dismiss(animated: true)
    }

    func mapplsCameraDidCancel(_ controller: MapplsCameraViewController) {
        controller.dismiss(animated: true)
    }

    func mapplsCamera(_ controller: MapplsCameraViewController, didUpdateLocation latitude: Double, longitude: Double, accuracy: Float) {
        // Handle real-time location updates
    }

    func mapplsCamera(_ controller: MapplsCameraViewController, didFailWithError error: MapplsCameraError) {
        print("SDK Error: \(error.localizedDescription)")
    }

    func mapplsCamera(_ controller: MapplsCameraViewController, didLoadNearbyPINs pins: [MapplsNearbyPIN]) {
        // Handle nearby places/PINs
    }


}
Option 1: Use Sample LibrarySwift
import MapplsCamera
import MapplsCameraSample

// Use the sample view controller
let sampleVC = SampleCameraViewController()
present(sampleVC, animated: true)

// Or use configuration presets
let cameraVC = CameraConfigurations.photoOnly()
cameraVC.cameraDelegate = self
present(cameraVC, animated: true)
Error HandlingSwift
func mapplsCamera(_ controller: MapplsCameraViewController, didFailWithError error: MapplsCameraError) {
    switch error {
    case .cameraPermissionDenied:
        // Handle no camera access
    case .locationPermissionDenied:
        // Handle no location access
    case .poorAccuracy:
        // GPS accuracy was below minimumAccuracyMetres threshold
    default:
        print("SDK Error: \(error.localizedDescription)")
    }
}

Connected implementation paths

Exact source paths

No quickstart or starter explicitly names this source. Continue through the platform path without claiming direct lineage.

Migration evidence

No published migration track names this source. Lifecycle and compatibility review still apply.

Production compatibility checklist

A clean demo is the beginning of the decision, not its conclusion.

  1. 01

    Confirm the exact package or artifact identifier and version with the owning Mappls product team; a repository name is not a package contract.

  2. 02

    Verify platform toolchain, operating-system, architecture, host-application, and transitive-dependency compatibility from a clean build.

  3. 03

    Bind only the documented credential class and restriction to its intended client or trusted-server runtime; never commit or log a secret.

  4. 04

    Verify account entitlement, region, quota, endpoint generation, data rights, and applicable commercial terms independently.

  5. 05

    Exercise initialization, ready, denied, empty, offline, timeout, cancellation, background/resume, and teardown paths.

  6. 06

    Pin dependency and native artifact integrity evidence; retain source fingerprint, selected version, lockfile, build provenance, and approving owner.

  7. 07

    For stateful or hybrid behavior, persist application state outside the SDK and prove idempotency, reconciliation, audit, privacy, and recovery.

  8. 08

    Release by a bounded cohort with observable rollback; repository activity or a successful fixture is never production compatibility evidence.

Local repository candidates

Only minimized identity evidence is exposed. Review candidates side by side; do not assume they are the same release line.

No deterministic local candidate was found for this public source.