You are on page 1of 24

EXECUTIVE SUMMARY

In this project the main aim is to create an app that helps the user to keep
track of all the events without missing any. In current busy life style people have to
perform variety of task in their day to day life like meeting at work, buying
groceries, filling petrol after work etc. We generally use paper notes and now a day
reminder system in mobile phones. But this app is used to provide solution to the
above problem. This is a location based reminder application which dynamically
notifies user so that they can be on or before time for an event. The application
extracts event details from Google calendar. The event details are assumed to be
pre-entered by user in Google calendar, and then application synchronizes the data
with Google calendar. It will run in background to access the user’s current
location and calculate travel time with respect to mode of travel selected by user.
The application allows user to edit/modify each schedule to set the importance as
well as mode of travel. Also user can do profiling for location access and reminder
settings. Based on the provided details and policies set by user the application will
intelligently notify user about the scheduled event. The notification sent to user
also includes the travel information to start navigation. The app also has a very
useful feature of location sharing among group of friends when they have common
event. By using this feature a user can find out where their friends are with respect
event location. Also it does not require texting or calling just to find out exactly
where your friend is while they are driving or doing some other work.

1
CHAPTER 1

INTRODUCTION

Cloud computing is the delivery of different services through the Internet.


These resources include tools and applications like data storage, servers, databases,
networking, and software. Rather than keeping files on a proprietary hard drive or
local storage device, cloud-based storage makes it possible to save them to a
remote database. As long as an electronic device has access to the web, it has
access to the data and the software programs to run it.

Cloud computing is originated from earlier large-scale distributed computing


technology. NIST defines Cloud computing as a model for enabling convenient, on
demand network access to a shared pool of configurable computing resources (e.g.
networks, storage, applications and services) that can be rapidly provisioned and
released with minimal management effort or service provider interaction.

Fig: 1.1 Cloud Computing

2
The cloud allows users to create and edit events. Reminders can be enabled for
events, with options available for type and time. Event locations can also be added,
and other users can be invited to events. Users can enable or disable the visibility
of special calendars, including Birthdays, where the app retrieves dates of births
and displays birthday cards on a yearly basis, and Holidays, a country-specific
calendar that displays dates of special occasions.

3
CHAPTER 2
LITERATURE SURVEY

In today’s fast paced life, keeping track of all the events which has travel
schedules is a tedious task. Though there are number of event reminder and
calendar applications available for android, none of them supports dynamic
reminders based on user’s current location. All the current available applications
give an event reminder before a fixed amount of time from the event start time.
Also, in the current available apps, a user has to separately feed information about
all the events with travel plans for which he/she wants to get reminders. A user can
set a fixed time for notifications to be sent before the event occurs. This requires
estimation of the time required for travel to reach the destination location from a
fixed start location and accordingly set the notification time to avoid delays
reaching the destination. This estimation goes wrong if user starts travelling from
different start location. This could lead to delays or even completely missing the
events .The existing System like,
Cute Reminder software supports schedule, recurrent reminders, individually
colorable skins, audio files in various formats (mp3, wma), quick search and easy
arrangement of sticky notes on your desktop, linking files and Web pages to
reminders, archiving of notes and reminders into history, printing, and more. It
automatically tracks the related events within the archive, so you can see an
individual history of any specific issue. The user-friendly interface of Cute
Reminder provides comfort at your workplace whether in the office or at home.
This reminder software is very powerful, and you will be surprised how easy it is
to use.

4
Secure Reminder - desktop reminder and scheduler program for Windows.
Secure Reminder is advanced reminder program that helps you organize your life.
Secure Reminder reminds about daily tasks or special dates and events such as
birthdays, anniversaries and business meetings before they occur. Secure Reminder
can serve as desktop reminder software, task and event scheduler, personal
information organizer and password generator. Main features of these reminders
are Quicker, Store and manage information in a safe manner, Search feature.

Viand Reminder 3.0 is used to remind you of bills, meetings, medication,


appointments, birthdays, trips, etc. With this easy to use reminder tool you can
send your reminder to your screen, cell phone, pager, or e-mail. It has a very user
friendly interface with an easy to use wizard for creating your reminders.
Import/Export your reminders to friends or colleagues with just a few clicks.
Create time and date specific, daily, weekly, monthly or yearly reminders. From
now on you can stay on top of things where ever you are. Version 3.0 includes new
look and design, enhanced features, and a more ease of use.

5
CHAPTER 3
DESCRIPTION

This mobile application is mainly objected to provide user a location-based travel


reminder application. This application not only keeps track of scheduled events, but also
helps user reach event’s destination location on time.
Figure 3.1 shows all the functionality-based operations that can be performed by user.

Fig 3.1 Use Case Diagram

6
3.1 EXISTING SYSTEM
There are bunch of schedule reminder android applications available today on
play store providing static notification to user before a specified interval of time.
The static notifications will not be proven to be useful when travel time for user is
considerably large with respect to reminder set for fixed time. Also, this could
cause delays in arriving at event location or even missing an event.

3.2 PROPOSED SYSTEM

EmergencyApp is a solution to the above problem. This is a location-based


reminder application which dynamically notifies user so that they can be on or
before time for an event.

3.2.1 SYSTEM ARCHITECTURE:

Android is a platform architected in the form of a software stack. The stack


components consist of applications, application frameworks, run-time environment,
libraries and Linux kernel. The operating system is developed by Google and is made
open source so that users can extend the functionality and usefulness of applications.
The android applications are developed in java using android software development
kit.

An android application is built of different types of components. Each type


serves a distinct purpose and has a distinct lifecycle that defines how the component is
created and destroyed. The application components are activities, services, broadcast
receivers, content providers. These components are loosely coupled by the application
manifest fileAndroidManifest.xml. This file has all the essential information about
each component of the application and how they interact.

7
3.2.2 COMPONNENTS IN ANDROID APPLICATION
Components used to build “EmergencyApp” application are:
1)Activities
An activity in android represents a single screen with which the user
interacts. A single application can contain several activities that are bound together.
Among these several activities only can be the main activity which handles the main UI
functionality when application is launched The main activity in “EmergencyApplication”
is named as “MainActivity”. The main activity is declared as following in
AndroidManifest.xml. Intent filter in main activity describes the operation to be
performed for an activity and type of intents to be received activity components declared
in AndroidManifest.xml are “TabbedActivity”, “ProgramDetailActivity” and
“ProgramEditActivity”.
2) Fragments
Fragment is a modular approach to design activity. Fragments are mainly
used to build a dynamic user interface where it is required to encapsulate UI components
and behavior of activity into modules. These modules are created using Fragment class
within an activity.The activity component “TabbedActivity” in “EmergencyApp”
application
has three fragment modules named “HomeFragment”, “SettingsFragment” and
“CheckInFragment”.
The other callback methods of fragment lifecycle used in application are:
• onAttach() Used in all three fragments to associate the fragment with activity.
This method takes an activity as argument.
• onCreateView() Used in all the three fragments to draw a UI.
• onActivityCreated() This method is used in “Check-In” fragment to get an
instance of Google map. The object of Google map obtained after .

8
• onCreateView() method is associated with the view. It is important to get hold
on to object beyond the life of view so that the map can be used. The instance
can be acquired using getMapAsync() method of SupportMapFragment class.
• onResume() Used in all fragments. When this method is called
fragment becomes active.
• onDetach() Overridden in all three fragments. Once this method is called
a fragment is no longer associated with the activity.
3)Services
Services does not require user interface. It performs operation with long run-
time in the background. A service does not have an independent thread, it uses of the
main thread from hosting process.
“RemindMe” uses two service components
• “BackgroundService”
• “ShowNotificationService”
4) Broadcast Receivers
The broadcast receivers are used to register for system or application events.
After registering, receivers will be notified about the events.
Figure 3.2 shows the two important steps to be done to make Broadcast Receiver
works for the system broadcasted intents.

Figure 3.2 Steps to Make Broadcast Receiver

9
In RemindMe application two dynamically registered receivers are used that
receive intents broadcasted by the system. As the application need to send broadcasts
within same application LocalBroadcastManager class is used to register and send
broadcast of intents.
The two dynamic broadcast receivers declared in “RemindMe” are described
as follows:
1. BROADCAST_RESULT_FOR_SETTINGS
When user clicks on check-in button in event details window, the application
context at that particular point is broadcasted as results to the setting window.
2. BROADCAST_RESULT_FOR_CHECKIN
When user clicks on check-in button in event details window, the application
context at that particular point is broadcasted as results to the check-in window same as it
was broadcasted to settings window

10
3.3 MODULEDESCRIPTION

1) View Scheduled Events


The application gets the event data from Google calendar and displays the list of first
ten events on application home page.
Figure 3.3 shows the functional flow in application to display scheduled events.

Figure 3.3 Display Scheduled Events

2) Event Profiling
This feature allows user to do profiling for individual events. In this user can edit
the mode for travel, priority and add comments for individual event. Options provided
to select mode of travel:
1. Car
2. Transit
3. Walking
4. Bicycling

11
By default the mode of travel is set to “car” and priority is “normal” for
all events. Based on profiling done, user will be notified for an event with travel route to
the event location.
Figure 3.4 shows the user actions to do profiling on an event.

Figure 3.4 Profiling an Event

3)Settings
A user can do the custom settings for following:
1. GPS time: It is the interval of time at which user’s current location is checked.
It will display the details of event: Name of event, Date and Time, Venue,Mode of travel,
Priority and Remarks. Provide user an option to edit Mode of travel, Priority and
Remarks for individual event and save the changes.
2. Buffer time: It is additional time used to notify user before starting travel for
event location. The additional time is decided by user as per his/her convenience to
prepare before start.

12
4) Notifying User
The notification feature of an application is responsible for dynamically notifying
the user prior to start of event based on his/her current location.
Factors considered for notification time :
The following factors are considered in sending notifications to user:
1. Buffer time
2. Travel time to event location
3. Event start time

For example:
• There is an event at 2:00 PM in the afternoon at location ‘Y’.
• User’s current location is ‘X’.
• Travel time from ‘X’ to ‘Y’ (Mode of travel selected is “car”) is 30 mins.
• Buffer time selected by user is 15 mins.

Notification will be sent 30(travel time) + 15(buffer time) = 45 mins prior to event
start. Time at which notification will be sent = 2:00 PM – 0:45 mins = 1.15 PM

5)Sharing Location with Others


This feature allows user to share their location with friends and family.
The feature will be useful when an event is common between a group of friends or family
members. To share their location, user has to check-in their current location. And to view
other friends location user has to add people in a group. Once user creates a group user
can see the location of members in that group on Google maps. In this way user’s friend
or family will be able know the user’s location with respect to event location.

13
Figure 3.5 Location Sharing with Others

14
3.4 BLOCKDIAGRAM

Fig 3.6 Block diagram

15
3.5 FLOW DIAGRAM

Fig 3.7 Flow diagram

16
3.6 SYSTEM REQUIREMENTS

1. Windows

2. Linux

3. OS X

HARDWARE REQUIREMENTS:

1. 2 GB RAM minimum, 4 GB RAM recommended .


2. 400 MB hard disk space .
3. At least 1 GB for Android SDK, emulator system images, and caches .
4. 1280 x 800 minimum screen resolution.

SOFTWARE REQUIREMENTS:

1. Operating system -Windows XP.

2. Coding Language -Java1.6

3. ToolKIT-AndroidSDK

17
3.7 MERITS AND DEMERITS

MERITS

• Can encourage attendance in those who simply forget.


• NOTIFICATION is popular and most widely welcomed mode of reminder
amongst adolescents and young adults.
• There is strong consistent evidence that mobile notification message reminders
improved rate of attendance compared with no reminders.
• Can encourage those users who need to reschedule to make another appointment.

DEMERITS

• Sometimes they may be no notification popping up, if there is anti software


issues.
• May not promote attendance who are anxious about the intervention.

18
3.8 SIMULATION RESULT

Fig 3.8: Application Installation – Login Screen

Fig 3.9: Choose an Account

19
Fig 3.10 Home Page

Fig 3.11 Event Details

20
Fig 3.12 Set Event Policies

Fig 3.13 Location Check-In

21
Fig 3.14 Adding Friends and Family

22
CHAPTER 4
SUMMARY

This application is intended to be more useful than existing schedule reminder


application by offering dynamic notifications to user. The application manages the
event schedules for user by keeping track of all the scheduled events. It runs in
background to access user’s current location and also calculates the travel time needed
depending upon the mode of commute. The calculation results are then used to notify
user dynamically. This application also offers an important feature of location sharing
among friends. The feature is developed using parse SDK for android.

23
REFERENCES

[1]Pradnyabattinand dr. S.d.markande, “location based reminder android application


using googlemaps api” in international conference on automatic control and dynamic
optimization techniques (icacdot) international institute of information technology
(i2it), pune,2016.
[2]Techotopia."An Overview of the Android Architecture." [Online].Available:
http://www.techotopia.com/index.php/An_Overview_of_the_Android_Architecture.
Accessed in October 2015.
[3] Wikipedia. "Android software development." [Online]. Available:
https://en.wikipedia.org/wiki/Android_software_development. Accessed in July 2015.
[4] Google Inc. "Application Fundamentals | Android Developers." [Online].
Available: http://developer.android.com/guide/components/fundamentals.html.
Accessed in July 2015.

WEB REFERENCES

[1] https://www.codeproject.com/Articles/15667/Simple-Reminder-Application
[2]http://mrbool.com/android-task-reminder-how-to-design-the-task-reminder-
application/31559
[3] https://www.irjet.net/archives/V3/i4/IRJET-V3I428.pdf

24

You might also like