Skip to content

Map Based Android App

Amit edited this page Aug 2, 2018 · 2 revisions

Map based Android app for GAMS

Drones Controller is a simple Android app that allows users to quickly get started with GAMS on Android. The repo is a Gradle based android project. It can be directly opened from Android Studio.

Assumptions
  • It is assumed that the MADARA & GAMS environment is setup properly
  • It is assumed that you are familiar with Android & the Studio IDE
App Installation
  1. Clone the Android app repo from here
  • Start Android Studio, File -> Open, navigate to the cloned repo and click on "Open"
  • The gradle project has packaged all the required dependencies. MADARA & GAMS Java port files are downloaded from Central Maven repository along with other dependencies
  • Click on Run button on toolbar to run the App either on Phone or Emulator
App Flow
  • Open the app and enter a name to initialize the Knowledge Base
  • The name field is used set in agent.{.id}.name variable
  • By default, the Android app listens to the multicast requests from the address 239.255.0.1:4150. So any agents multicasting at this address will be shown on Google Map. Please ensure you are connected to a same network where other agents will be sending data
  • The app internally takes your current location and sends it other agents via Multicast
  • As the device location changes, the app continues to send updates to all other agents in the network
  • Next, we use either gams_controller or kaRL command line programs to simulate agents
  • To create agents in network, execute the command $GAMS_ROOT/bin/gams_controller -i 25 -m 239.255.0.1:4150. The command creates a agent with id 25 and starts multicasting the information to the above address
  • Android app will immediately show the newly added agent in the network
  • The app recognizes agents by their name. Execute the command line to multicast the agent name $MADARA_ROOT/bin/karl -m 239.255.0.1:4150 "agent.25.name='DroneOne'"
  • Select an agent from dropdown to send an Algorithm
  • Currently app supports sending Move, URAC, UREC, Waypoints Coverage algorithms
App demo video

https://github.com/amsurana/gams-android-app/blob/master/AppShowcase.mp4

Clone this wiki locally