Giter VIP home page Giter VIP logo

location-tracker-client-swift's Introduction

Location Tracker

The Location Tracker app is an iOS app developed in Swift to be used in conjunction with the Location Tracker Server or the Location Tracker Envoy Server.

How it works

The Location Tracker app tracks user locations and stores those locations in Cloudant. When you run the Location Track app for the first time register as a new user:

Location Tracker App Register

The Location Tracker app tracks users as they move. Blue pins mark each location recorded by the app. A blue line is drawn over the path the user has travelled. Each time the Location Tracker app records a new location a radius-based geo query is performed in Cloudant to find nearby places. The radius is represented by a green circle. Places are displayed as green pins:

Location Tracker App Map

The Location Tracker app uses Cloudant Sync for iOS to store locations locally and sync them to Cloudant:

Location Tracker Cloudant Map

All locations are stored in a local datastore and synced to the server. The Location Tracker app can operate completely offline (locations can only be tracked if device has clear sight to satellites). Places can only be queried while online, but are stored locally for offline usage.

Running with Xcode

Make sure you have a Location Tracker Server or Location Tracker Envoy Server configured and running.

Clone the project and change into the project directory:

$ git clone https://github.com/ibm-cds-labs/location-tracker-client-swift.git
$ cd location-tracker-client-swift

The Location Tracker app uses Cocoa Pods to manage dependencies. If you don't have Cocoa Pods installed you can install it using gem:

$ sudo gem install cocoapods

Once you have Cocoa Pods install run the pod command:

$ pod install

In Xcode open LocationTracker.xcworkspace (note: Be sure to open the workspace and not the xcode project).

Open the AppConstants.swift file in LocationTracker > LocationTracker. Change the baseUrl to point to your Location Tracker Server running on Bluemix or locally:

static let baseUrl: String = "http://location-tracker-XXX.mybluemix.net"

Click the play button to run the project in the iOS Simulator. Register as a new user as described above, grant the app access to track your location, and configure the debug location to "Freeway Drive":

Location Tracker App Simulator

License

Licensed under the Apache License, Version 2.0.

location-tracker-client-swift's People

Contributors

markwatsonatx avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.