This document describes an Android application called Rally that integrates location-based services and Google Maps. Rally allows an admin to select points on a map that users must visit in a scavenger hunt-style game. Users can follow the points automatically along a predetermined path or manually in any order in custom mode. The document outlines Android's architecture, location APIs, Google Maps APIs, and how Rally uses these features to allow location-tracked gaming across a map.
2. CONTENTS
Introduction
What is Rally?
Why Android ?
Android Architecture
Location Based Services (LBS)
Android location API
Google Maps Android API
Android Rally
Conclusion
2
3. INTRODUCTION
RALLY is based on Google map’s integration and
location based services in Android
Its working model is gaming concept based on user
location
The application runs on top of Google maps
Tracking user location is important part of this project
Player is presented with set of markers
These markers can be followed in two differents ways:
Automatic and Custom
3
4. WHAT IS RALLY?
It is team application
The team has to join points in order or not depending on
the modes they choose
All points are located on the Google Maps
Each path represents as the joining of points on maps
either ordered or unordered
All points are selected on the mobile device
NOTE:
The application can be client/server but for now it is
android only
4
5. WHY ANDROID ?
Android is one of the most used OS for smart phones
over 1.4 billion devices running.
Its platform is of open system architecture with versatile
development and debugging environments.
It offers rich graphics systems
It supports GPS, video camera, compass, 3d-
acceleromrter and provides rich API’s for map based
location services.
Users can access, control, process Google map and
implement location based services at low cost.
It follows a software stack architecture .
5
6. ANDROID ARCHITECTURE
Its basically described by a software stack model :
Linux Kernel: android relies on linux kernel for core
services such as memory/process management, security and
driver model
Libraries: include set of C/C++ libraries used by various
android system components
Android Runtime: provides set of core libraries that
provides most of functionality
Application Framework: includes all the application in the
form of services such as Activity manager, Location manager.
Applications: basic core apps on top framework eg. SMS
6
8. LOCATION BASED SERVICES (LBS)
8
LBS is software-level service that uses location data to
control features.
There are two ways to track mobile device’s location:
Communication Network (Eg. WiFi) and GPS
In our project we used GPS based service to track user
location and show it on the Google Map.
9. 9
The above components work together to form a whole network that is utilized to find
the user location. GPS providers facilitate geo-specific functionality of LBS including
map information, visualization and directory services.
10. ANDROID LOCATION API
Android has the location
package that contains all
the functions used for
getting geo location of
user.
Functionalities and classes
that we have used in our
project are represented in
this table.
Class Name Functionality
Location It is a data class representing a
geographical location
LocationManager Class provides access to the
system location service
LocationProvider Abstract super class for location
providers
LatLng Class describes location in form
of longitude and latitude
GpsStatus Represent current state of GPS
engine
GpsSatellite Represents current state of GPS
satellite
10
11. GOOGLE MAPS ANDROID API
It is a mapping service developed by Google.
It offers satellite imagery, street maps, 360° panoramic
views of streets (Street View), real-time traffic conditions
(Google Traffic), and route planning
Maps are represented in the API by GoogleMap and
MapFragments
API automatically handles access to Google Maps
servers
Also facilitates data downloading, map display, and
response to map gestures
11
12. OBJECTS OF MAPS API
Icons anchored to specific positions on the map
(Markers)
Sets of line segments (Polylines).
Enclosed segments (Polygons)
Maps API KEY is needed by the application to connect
with Google Maps API
You can put restrictions for access on the API key
Getting an API key is simple process by creating it
through Google’s developer console
12
13. ANDROID RALLY
Project “Rally” is based on the location based gaming
concept like “Pokemon Go”
•It includes the Google Maps to show user location
•And GPS to track the changing user’s location
•The application includes two modes
•Automatic mode: markers and path both are given to
follow
•Custom mode: only markers are given
13
16. ADMIN FUNCTIONALITY
The Admin is responsible for selecting the positions for the
Rally
After the selection these points are send to Automatic and
Custom activities
The points are send in ordered manner to Automatic
activity
Points are send unordered manner to Custom Activity
16
18. AUTOMATIC FUNCTIONALITY
18
The selected points appear
with the path that the user
must follow in the rally
In this mode user have to
directly follow the points
given by the Admin
Start represented by
green color
Destination represented
by blue colour
19. CUSTOM FUNCTIONALITY
Here the points selected
by the Admin are shown
But without the path to
follow
The user can follow any
path he wants
But all points should be
traversed
19
20. CONCLUSION
Our project is a demonstration of Google Maps
Our application satisfies the objective of our project
This application though very simple in working but can
be engaging and provides you with a different aspect of
looking at the android games.
FUTURE SCOPE
This application can be moved to client/server application
20