Android App Development Project: Medication Reminder App

Verified

Added on  2022/09/29

|31
|9793
|30
Project
AI Summary
This project report details the development of a user-friendly Android mobile application designed to help users remember their medication dosages. Developed using Android Studio and tested on smartphones, the application utilizes the agile methodology for efficient project management. The report includes a comprehensive literature review, covering the fundamentals of Android app development, including programming languages (XML and Java), development tools, application components, and considerations for performance and security. The methodology section outlines the project management approach, while the design section describes the application's user interface and functionality. The implementation section details the coding and integration of the application's features, and the testing and evaluation section covers the methods used to ensure the application's functionality and usability. The report concludes with a summary of the project's key findings and achievements, highlighting the application's potential to improve patient medication adherence. The application includes features for user registration, medication entry, alarm setting, and medication search, with the primary goal of helping patients take their medicines at the correct times.
Document Page
Running head: ANDROID APP DEVELOPMENT
ANDROID APP DEVELOPMENT
Name of the Student
Name of the university
Author note
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
1ANDROID APP DEVELOPMENT
Abstract
The paper provides the development process of a user-friendly mobile application that is of
great help as it helps its users to remind themselves of their medication dosage. The
application is developed on Android Studio and has been tested on smart phones. This
application has made use of agile methodology for keeping pace with the contemporary
projects like this. The literature review for the same has been given in report to make the
users understand about the development of such applications. The design, process of
implementation and testing and evaluation has also been given. Finally the report concludes
by summarizing the report and pointing out the key points in the same.
Document Page
2ANDROID APP DEVELOPMENT
Table of Contents
Introduction................................................................................................................................3
Literature Review.......................................................................................................................4
Methodology & project management.......................................................................................16
Design......................................................................................................................................20
Implementation........................................................................................................................21
Testing and Evaluation.............................................................................................................22
Conclusion................................................................................................................................22
References................................................................................................................................24
Document Page
3ANDROID APP DEVELOPMENT
Introduction
Smart phones have been the popularly used computing devices with a wide
predominance of Android platform. The technology has been evolving and along with this
there has been a surge in the Android applications as well. This has become a wide field of
study with many researchers putting in enormous efforts to develop numerous applications
that can assist humans in different sectors. The Android applications have gained a lot of
popularity and since its evolution people are getting aligned to online activities. With each
passing day use of android applications in spheres such as shopping, medical and many more
have attracted the users. The increasing usage of smart phones can be attributed for this surge
in the Android applications. The main problem with patients especially the aged patients is
that they forget the time of intake of medication and suffer for the same. Taking medication
in wrong time or skipping the doses has adverse affect on their health. Studies suggest that
many doctors complain of having patients who do not take their medicines on time or rather
they forget about the time of dosage (Ameta, Mudaliar & Patel, 2015). The application being
developed will be of great help to solve the problem. The application will be include steps
such as registering the users, logging them in, adding medication, adding alarm for taking the
medicines as per the time prescribed by the doctor and remove medicines from the saved list.
This application will also provide the users with the facility to search for medicines that have
been recorded in the list previously. The main aim of the application is to help the patients
with their medicine dosage and check that the patients are taking their medicines at right
time. In this paper, the previous work on such android applications, project management to
build the application, requirements for building such applications, implementation procedures
will be discussed.
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
4ANDROID APP DEVELOPMENT
Literature Review
With the advancement of technology, many different types of applications are making
our phones “smart” and there have been a drastic transformation in the way we function
today. Skilled and proficient programmers are busy in creating and developing apps and
stacking those with the required features. As per the research done by Choi et al., (2015), the
various Android fundamentals that should be known are as follows;
1. Expertise in the language- The two important programming languages utilized in App
development in android is XML and Java. Therefore having excellence and mastery over
these languages are the prerequisites for the application development. Some fundamentals of
Java include Packages, Inheritance and interfaces, Objects and classes, Strings and numbers,
generics, Concurrency and Collections.
2. Being familiar with the proper Development tools- It is necessary to familiarize with the
automation tools before starting the application development process. Android app studio,
Eclipse or IDE which help in the basic understanding of the code (Ma, Ovalle &
Woodbridge, 2018). On the other hand Apache Ant, Gradle and Maven provide for a set of
powerful tools which helps in managing the builds. It is also necessary to make one familiar
with source control concepts and tools.
3. Information about the Application Components- The important building blocks of
Android application development are the application components. The different types of
application and component which serve a distinguished purpose with a different life cycle
and defines its creation and destruction. This includes the following:
Activities
This component represents an user interface with single screen for example an email
application may be having single activity, showing a stack of new emails, other activity is to
Document Page
5ANDROID APP DEVELOPMENT
compose emails and yet another reading those. So these types of activities bind together
forming a cohesive user experience in the application, though each one is independent.
Content Providers
Through this, data that is stored in the file system, or the web, a SQL database can be
modified or even queried (Fathi, Hashim, Ibrahim and Hassan, 2017). This is also utilized for
reading and writing the data that is not shared or is private to the application.
Broadcast Receivers
These respond to the broadcast announcements. Most of these receivers generate from the
system and though they are not into displaying the user interface, a status bar notification is
created which alerts the end user during the occurrence of a broadcast event. Basically, it acts
as a gateway for the other components and does very less work.
Activating components
Intent is referred to as a synchronous message which activates 3 of the four components like
broadcast receivers, services, activities (Obugyei & Raman, 2018). These bind the individual
elements to each other during runtime irrespective of it belonging to the app or not.
4. Consciousness on Loaders and Tasks, Threads, Fragmentations and Android
Application- Android is a shattered market with numerous different devices and OS
versions. If the device supports a number of other devices it requires more testing and
maintenance and this results in the increase of cost as well. Proper font’s layouts and assets
are required which ensure the best experiences. The sensors supported by android and UI
facilities should also be considered (Abel, Gavidi, Rollings and Chnadra, 2015). Every
android application has an application class, fragments and activities. Sometimes there can be
services for background tasks which continuously run but at other times it may not. For
delivering a smooth interface, it should be ensured that the thread is not blocked. Thus, the
longer operations like computations, network and input output should all run asymmetrically
Document Page
6ANDROID APP DEVELOPMENT
in the background. It is necessary to be aware of the concurrent facilities in the Java
language.
5. Choice of Tools should be correct- Mac, Windows PC, Eclipse, any type of Linux,
Android SDK or the ADT plug in are among the simple tools required for android application
development. The unique parameters that should be considered while writing an Android app
are as follows:
Execution and Responsiveness
There should always be a response to the input by the user within 5 seconds or else the OS
will assume that the application is not responding after which the only option would be to
close the app forcefully. If there is a lag of more than 1ooms, it will be noticed by the users.
Limited Resources
Wake-lock is a mechanism which forces the device the system to execute a certain thing
inspite of the recommendation for the device to be in sleep mode by the battery manager.
Battery Efficient App
Users do not prefer to use an application which consumes high battery power. It is required
for mobile app developers to create such apps which are functional as well as battery efficient
because users don’t think twice before uninstalling an app which does not satisfy the battery
needs.
Reduction in memory consumption
This is one more factor which determines the success or failure of a mobile application.
Developers are required to focus on the usage of memory space (Farhadyar, Safdari,
Behpajooh & Nematollahi, 2018). If the application utilizes more space then it affects the
processor and in turns the device. In such cases apps lose high customer engagement.
Security of users should be prioritized
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
7ANDROID APP DEVELOPMENT
As per the research done by Nate, Navele, Mote & Naik, (2016), security is the major
concern in today’s world and if an app fails to meet the security measures then everything can
be futile. Thus it is important to integrate effective security features while developing mobile
or android apps. The core of Android development is knowing the activity lifecycle is
necessary when it is related to the creation of a bug-free app. It is for supporting the dynamic
and flexible User Interface designs on tablets and large screens. Debugging application is an
important skill set for a developer and this is provided by android studio. The understanding
of the context is important for android development. Java Virtual machine provides for an
application to have numerous threads of execution concurrently running and the advantage of
multi-threading environment should be known correctly like threading performance, android
threading, memory threading, and performance patterns. Database, SQL, REST and HTTP
should be known. Content providers are utilized for sharing information between the
applications. Mechanisms are provided for data security and encapsulation of data. Learning
about Intent Service and service in which a service is used for operation performance in the
background like interacting content providers, playing music, handle network transactions
and it does not have an User Interface. Having knowledge about the tools is important for
getting the data of CPU and memory utilization and certain caching implementations.
Network request frequencies should be optimized and developers should have the knowledge
about creating a Custom View, which helps in the development of Android App. It is not a
good practice to hold the reference of objects that do not have any kind of requirement.
As per the research done by Tadvi, Ansari, Kapasi & Desai, (2017), making the
object’s reference free after being used is helpful for the garbage collector to destroy that
object and this helps in preventing memory leak issues because keeping unnecessary object
reference leads to memory leaks. But a developer should also know the process for fixing the
issue at the same time. Studying the performance patterns in Android applications and the
Document Page
8ANDROID APP DEVELOPMENT
garbage collection methods is important. Knowledge about the Invalidations, performance,
layouts, Android UI, GPU, battery improvement, app launch time is necessary. Developers
should know the process of reducing the AOK size and work on the lacunas for improvement
in the applications. There should be an understanding of the Bitmaps as it utilizes a huge
amount of memory and can tend to OOM easily. The application users like content,
especially when it is nicely formatted, for example if content has images those will get the
attention of the users but the drawback is that they will consume too much memory. One
more important thing is the RXJava which has now become mandatory for Android app
development. Android Jetpack on the other hand has been created for making the app
development faster. The next generation of the Android elements brings in the benefits of
instant updates, support library and backward compatibility. It monitors activities like
lifecycle management, navigation for which developers can eliminate overlapping code and
concentrate on those things which can make the application better. Business needs today can
get solutions in a single step via mobile application technology, whether the app is developed
internally or by engaging the services of a mobile application development organization,
people need to understand the complete process. Developers should adhere to various
important techniques so that they are able to perform dynamic application development. If the
right strategies are not followed it is difficult for application developers to get the required
solutions. Developers need to create apps which not only keep the business engaged but also
should help in the enhancement of the sales of product and services, find customers, enhance
client base and concentrate on target audience. Now there is an increasing demand for
application among a number of businesses. Most of the enterprises across the world are
showing interest in app development. Application should be able to function smoothly to
attract user attention. 77% of the Americans are the owners of smartphones today and
majority of their time is spent on the applications. Reports state that in 2017, 197 billion
Document Page
9ANDROID APP DEVELOPMENT
applications were downloaded which ensured that the career of an Android app developer is
stable and there are numerous growth opportunities in it.
As per the research done by Rattanayotin & Vanijja, (2018), the utilitarian and user-
friendly nature of the mobile devices it has been used as an indispensable expedient for
human essentials. The mobile software developers need to release software within a specific
time and budget. Software estimation plays a vital role and it provides accurate sizing figure
for building confidence in the relationship of developers and stakeholders. There are many
such approaches that are made used for estimation of traditional software and the same are
adapted for development as well as testing of mobile application. The estimation of the
efforts for software testing includes estimating test size, effort, price and the entire schedule
by the means of various methods along with tools and techniques. Android applications have
access to a premier open marketplace for distribution that is Google Play. No sooner a
company publishes a new application on Google Play there are millions of users who access
the application. There are many such interesting facts that can be learned from the data sets
on the application markets and aggregations of the volumes of data. There exist official
application stores that include Google Play containing several million applications for the
Android platform. The official and in official market places host executables and metadata
generated by the developers along with users for each of the applications. Data from Google
Play can be accessed via the medium of public web interface and undocumented API that are
made use of by Android smartphones so that the app installations can be managed (Hecht,
2015). There are commercial databases available that are responsible to mirror metadata from
the platform of Google Play and other such applications’ market selling access to
informations. Among these commercial databases there are comprehensive metadata of
numerous applications but this lack in linking to other available resources that include source
codes or executable artifacts. Data from the market place is made use of in wider fields
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
10ANDROID APP DEVELOPMENT
despite of the difficulties to access the data. The user reviews on the applications are yet other
data point from the market places that help the developers to come up with new features of
the applications.
As per the research done by Acharya, Gokani, Chauhan & Pandya, (2016), there are
privacy concerns with these kinds of medical applications. There are many studies that relate
to privacy and security implications of the users within the healthcare sector. The widely
available mobile applications have little or no such security measures incorporated in them.
The application will be recording the medicines of the users and this is personal thus leak of
this data can lead to serious consequences. The cyber criminals can make use of these data to
harm the patients and hamper the integrity and confidentiality of data. The use of smart
devices by the health care professionals has been able to transform various aspects related to
clinical practice. The popularity of the android applications is due to increasing use of mobile
devices which has been the base for development of medical software applications for
distinct platforms. The applications that are available have been developed in such a way that
they can assist health care professionals with various important curriculum that include
managing informations, health records, accessing communications, information gathering,
patient list management, decision making and other medical education along with training.
The applications need to be laced with better standards and certain validation practices that
relate to mobile medical applications (Hussain et al., 2018). The researchers are of the
opinion that android applications as such that can keep a record of the time of medication
intake can be of great help in this particular sector. The volumes of information of the
patients in the medicals sector can be organized by the help of new applications and this will
be helpful in dealing with the complicacies of the work as well.
Document Page
11ANDROID APP DEVELOPMENT
As per the research done by Fallah & Yasini, (2017), android based healthcare
devices are effective in transforming the healthcare sector in many ways that include the
following:
1) Enhance point-of-care coordination- In traditional hospitals, after a patient gets
discharged he is provided with prescriptions and certain instructions by the nurses. The time
and dosage of medication can be recorded that can save the not only the hospital staffs but
also the patients from skipping their dosage. There can be miscommunications when the
nurse is explaining the prescription thus leading to mishaps. Misunderstanding of the time of
dosage of medicines can affect the health of the patients directly leading to recurrence of the
ailment. Studies suggest that prescription errors are responsible for almost 70 percent of the
medication errors. Mobile devices have showed their potential in changing the dynamic by
helping the doctors and nurses to coordinate in a better way with the patients relating to the
diagnosis, medication and associated follow up processes (Gogate, Marathe, Mourya &
Mohan, 2017). The advanced applications are effective in monitoring whether a patient has
got a good understanding of the instructions. Thus point-of-care coordination can has been
found to make huge level of difference in the field of patient recovery thereby bringing in
decrement in the re-admissions.
2) Seamless flow of large amount of data- The healthcare system is complex in nature and
there is continuous flow of data in between patients and healthcare providers. Mobile
technology is helping in making the complex ecosystem move the informations in a more
efficient manner as they are not required to take heed about the misplaced papers, different
files and multiple folders. Cyber security is considered to be a major concern in this case
chevron_up_icon
1 out of 31
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]