Professional Documents
Culture Documents
By
USHA M
Mrs. Nithya
Certificate
Certified that the project entitled “MEDI CONSULT ANDROID APP”
carried out by Usha M bonafide student of Smt. Danamma Channabasavaiah
College of Arts, Commerce, Science and Management Studies in partial fulfilment
for the award of the degree of Bachelor of Computer Applications of Bengaluru
North University during the year 2019-2022. The project report has been approved
as it satisfies the academic requirements in respect of project work prescribed by the
said degree.
External
4
Smt. Danamma Channabasavaiah College of Arts, Commerce, Science
And Management Studies
Kodiramasandra, NH – 75, Bypass, Kolar – 563103
(NAAC Accredited with ‘B’ Grade and affiliated to Bengaluru North University)
Place: Kolar
Date:
5
ACKNOWLEDGEMENT
The satisfaction and euphoria that accompany the successful completion of any
task would be incomplete without the mention of the people who made it possible,
whose constant guidance and encouragement crowned our efforts with success.
I am grateful to the Vice Principal and Head of the Department Mr. Satyajit Ray,
Department of Computer Science and Applications for his unfailing encouragement
and suggestion given to me in the course of Project work.
6
ABSTRACT
This project is based on the Mobile Application for Online Consultancy for people all around
the world. This App basically allows us to Consult ourselves while sitting at our Home.
From this application, a user can input their Symptoms and can get a list of Diseases that they
can have and provides basic Information regarding that Diseases. It also provides link for
more Information. Also provides Option for finding nearby Hospitals and Emergency Calls.
7
TABLE OF CONTENTS
1 Synopsis
2 Software Development Life Cycle
3 Software Requirement Specification
4 Software and Connectivity
5 Feasibility Study
6 System Analysis
7 ER Diagram
8 Data Flow Diagram
9 Snapshots
10 Coding
11 Data Base
12 Testing
13 Implementation
14 Future Enhancements
15 Conclusion
16 Bibliography
8
SYNOPSIS
This Project is entitled as Medi Consult. As the name itself suggest it is a Medical
App. It takes Symptoms as user’s inputs and displays the list of Diseases as per
priorities based on list of Symptoms provided by User.
• WELCOME PAGE
• HOME PAGE
o Name
o Age
o Gender
• DISEASE CHECKER
o Entering the Symptoms
o Displaying of Diseases
o Link for Detailed Information
• NEARBY HOSPITALS
• SOS CALL
o Enter Number
• CONTACT US
o Call
o Mail
o Location
9
1.1 Purpose
1.2 Scope
With the help of this application one can prevent their Diseases from spreading
more. This can save someone’s Life who cannot reach to the Doctor in case of
Emergency. They can at least take some action for preventing their Disease.
1.3 Objective
The main objective of this application is to help people to cure them and save
their Time, Money and Resources, and save their Lives as well.
10
Software Development Life Cycle (SDLC):
SOFTWARE DEVELOPMENT
LIFE CYCLE
SDLC is a systematic process for building software that ensures the quality and correctness of the software
built. SDLC process aims to produce high-quality software that meets customer expectations. The system
development should be complete in the pre-defined time frame and cost. SDLC consists of a detailed plan
which explains how to plan, build, and maintain specific software. Every phase of the SDLC life Cycle has
its own process and deliverables that feed into the next phase. SDLC stands for Software Development
Life Cycle and is also referred to as the Application Development life-cycle.
1. Requirement Analysis:
11process. It is conducted by the senior team members
The requirement is the first stage in the SDLC
with inputs from all the stakeholders and domain experts in the industry. Planning for the quality
assurance requirements and reorganization of the risks involved is also done at this stage.
2. Design:
In this phase, the system and software design documents are prepared as per the requirement
specification document. This helps define overall system architecture.
3. Implementation:
Once the system design phase is over, the next phase is coding. In this phase, developers
start build the entire system by writing code using the chosen programming language. In the coding
phase, tasks are divided into units or modules and assigned to the various developers. It is the longest
phase of the Software Development Life Cycle process.
4. Testing:
Once the software is complete, and it is deployed in the testing environment. The testing team
starts testing the functionality of the entire system. This is done to verify that the entire application
works according to the customer requirement.
During this phase, QA and testing team may find some bugs/defects which they communicate
to developers. The development team fixes the bug and send back to QA for a re-test. This process
continues until the software is bug-free, stable, and working according to the business needs of
that system.
5. Evolution:
Once the system is deployed, and customers start using the developed system, following 3
activities occur
• Bug fixing – bugs are reported because of some scenarios which are not tested at all
• Upgrade – Upgrading the application to the newer versions of the Software
• Enhancement – Adding some new features into the existing software
The main focus of this SDLC phase is to ensure that needs continue to be met and that the system
continues to perform as per the specification mentioned in the first phase.
• Waterfall Model
• Spiral Model
• Iterative Enhancement Model
For the development of our project, we used Waterfall Model.
It is said that the Waterfall methodology follows the adage to “measure twice, cut once.” The
success of the Waterfall method depends on the amount and quality of the work done on the front end,
documenting everything in advance, including the user interface, user stories, and all the features’
variations and outcomes. With the majority of the research done upfront, estimates of the time needed for
each requirement are more accurate, and this can provide a more predictable release date. With a Waterfall
project, if parameters change along the way, it’s harder to change course than it is with Agile methodology.
The Waterfall methodology follows a chronological process and works based on fixed dates, requirements,
and outcomes. With this method, the individual execution teams aren’t required to be in constant
communication and, unless specific integrations are required, are usually self-contained. Team members
also tend to work independently and aren’t expected to provide status reports as often as with the Agile
approach. Usually, one phase doesn’t begin until the previous one is finished.
13
1. Requirements:
The Waterfall methodology depends on the belief that all project requirements can be
gathered and understood upfront. The project manager does their best to get a detailed
understanding of the project sponsor’s requirements. Written requirements, usually
contained in a single document, are used to describe each stage of the project.
2. Design:
Here, software developers design a technical solution to the problems set out by the product
requirements, including scenarios, layouts, and data models. First, a higher-level or logical
design is created that describes the purpose and scope of the project, the general traffic flow
of each component, and the integration points. Once this is complete, it is transformed into
a physical design using specific hardware and software technologies.
3. Implementation:
Once the design is complete, technical implementation starts. This might be the shortest
phase of the Waterfall process, because painstaking research and design have already been
done. In this phase, programmers code applications based on project requirements and
specifications, with some testing and implementation taking place as well. If significant
changes are required during this stage, this may mean going back to the design phase.
4. Verification:
Before a product can be released to customers, testing needs to be done to ensure the product
has no errors and all of the requirements have been completed, ensuring a good user
experience with the software. The testing team will turn to the design documents, personas,
and user case scenarios supplied by the product manager to create their test cases.
5. Maintenance:
Once the software has been deployed in the market or released to customers, the
maintenance phase begins. As defects are found and change requests come in from users, a
team will be assigned to take care of updates and release new versions of the software.
• The total cost of the project can be accurately estimated, as can the timeline, after the requirements
have been defined.
• With the structured approach, it is easier to measure progress according to clearly defined
milestones.
• Clients often don’t fully know what they want at the front end, opening the door to requests for
changes and new features later in the process when they’re harder to accommodate.
14
SOFTWARE REQUIREMENT SPECIFICATION
3.1 User Characteristics
The application has been made very user friendly with basic Interface. Application is
well organized with attractive UI. The UI is very simple and easy to use and
understand.
• Adobe XD
JDK 11.0.1
15
SOFTWARE AND CONNECTIVITY
For developing an Android Application, I’ve used Android Studio software. It is an
open source software. I’ve designed UI in Android Studio using XML.
Android Studio is an open source software. You can download and set up it from
the official website. After installing Android Studio, you have to setup the path
for SDK and download the desired API and desired emulator to test your
application.
4..2 Creating UI
You can design UI using XML in Android Studio. To create attractive UI, you can also
use Adobe XD.
• Symptoms Checker
• Nearby Hospitals
• SOS Call
16
FEASIBILITY STUDY
Feasibility study:
A feasibility study is a detailed analysis that considers all of the critical aspects of a proposed
project in order to determine the likelihood of it succeeding. Success in business may be defined primarily
by return on investment, meaning that the project will generate enough profit to justify the investment.
However, many other important factors may be identified on the plus or minus side, such as community
reaction and environmental impact. Although feasibility studies can help project managers determine the
risk and return of pursuing a plan of action, several steps should be considered before moving forward.
1. Technical Feasibility
The technological resources that are used by the company should undergo an examination. It assists
businesses in determining whether technical resources are sufficient for the job and whether the technical
team is capable of executing planned concepts. To assess the technical viability factors like the system's
hardware, software, and other possible technical needs are taken into account.
2. Economic Feasibility
A cost-benefit analysis of the project is frequently included in this review, which helps firms determine the
project's viability, cost, and benefits before investing financial resources. It also serves as an unbiased
project evaluation, enhancing project credibility by supporting decision-makers in identifying the proposed
project's favorable economic benefits to the company.
3. Legal feasibility
This assessment looks into if any component of the proposed project violates any regulations, such as
zoning laws, data protection legislation, or social media laws. Let us take an example that a company that
desires to build a new office building at a particular location. A feasibility study may discover that the
desired location for the company is not designated for that sort of business.
17
SYSTEM ANALYSIS
System Analysis
It is a process of collecting and interpreting facts, identifying the problems, and decomposition of a system
into its components.
System analysis is conducted for the purpose of studying a system or its parts in order to identify its
objectives. It is a problem-solving technique that improves the system and ensures that all the components
of the system work efficiently to accomplish their purpose.
Analysis specifies what the system should do.
The project was a good experience for me. I think that from this project I learnt a lot
about how an official application works.
18
Data Flow Diagram
A data-flow diagram is a way of representing a flow of data through a process or a system (usually
an information system). The DFD also provides information about the outputs and inputs of each entity and
the process itself. A data-flow diagram has no control flow — there are no decision rules and no loops.
Specific operations based on the data can be represented by a flowchart. There are several notations for
displaying data-flow diagrams. The notation presented above was described in 1979 by Tom DeMarco as
part of structured analysis.
For each data flow, at least one of the endpoints (source and / or destination) must exist in a process. The
refined representation of a process can be done in another data-flow diagram, which subdivides this process
into sub-processes. The data-flow diagram is a tool that is part of structured analysis and data modelling.
When using UML, the activity diagram typically takes over the role of the data-flow diagram. A special
form of data-flow plan is a site-oriented data-flow plan. Data-flow diagrams can be regarded as
inverted Petri nets, because places in such networks correspond to the semantics of data memories.
Analogously, the semantics of transitions from Petri nets and data flows and functions from data-flow
diagrams should be considered equivalent.
19
SNAPSHOTS
Welcome Page
20
Home Page
21
5.3 Disease Checker
22
23
24
25
CODING:
CONTACT US;
package com.ndkapp.www.mediconsult;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
TextView t1;
TextView t2;
TextView t3;
ImageView i1;
ImageView i2;
ImageView i3;
private static final int REQUEST_CALL = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_contact_us);
t1 = findViewById(R.id.call_cs);
t2 = findViewById(R.id.mail_cs);
t3 = findViewById(R.id.map_cs);
i1 = findViewById(R.id.final_call);
i2 = findViewById(R.id.final_mail);
i3 = findViewById(R.id.final_map);
i1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
makePhoneCall(num);
}
});
26
t2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_SENDTO);
i.setType("message/rfc822");
i.setData(Uri.parse("mailto:" + "usha.gowda@gmail.com"));
i.putExtra(Intent.EXTRA_SUBJECT, "Query or Feedback");
try {
startActivity(Intent.createChooser(i, "Choose an Email client
:"));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(activity_contact_us.this, "There are no email
clients installed.", Toast.LENGTH_SHORT).show();
}
}
});
i2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_SENDTO);
i.setType("message/rfc822");
i.setData(Uri.parse("mailto:" + "usha.gowda@gmail.com"));
i.putExtra(Intent.EXTRA_SUBJECT, "Query or Feedback");
try {
startActivity(Intent.createChooser(i, "Choose an Email client
:"));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(activity_contact_us.this, "There are no email
clients installed.", Toast.LENGTH_SHORT).show();
}
}
});
t3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent bIntent = new Intent(Intent.ACTION_VIEW);
bIntent.setData(Uri.parse("https://www.google.com/maps/dir/13.143539,78.2134339/sdc+k
olar+location+url/@13.1300524,78.1351436,13z/data=!3m1!4b1!4m9!4m8!1m1!4e1!1m5!1m1!1s
0x3badf0514213ee29:0xa326ce6782c86a55!2m2!1d78.149723!2d13.1223742"));
startActivity(bIntent);
}
});
i3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent bIntent = new Intent(Intent.ACTION_VIEW);
bIntent.setData(Uri.parse("https://www.google.com/maps/dir/13.143539,78.2134339/sdc+k
olar+location+url/@13.1300524,78.1351436,13z/data=!3m1!4b1!4m9!4m8!1m1!4e1!1m5!1m1!1s
0x3badf0514213ee29:0xa326ce6782c86a55!2m2!1d78.149723!2d13.1223742"));
startActivity(bIntent);
}
});
ACTIVITY DISEASE:
package com.ndkapp.www.mediconsult;
import androidx.appcompat.app.AppCompatActivity;
import androidx.cardview.widget.CardView;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.text.method.LinkMovementMethod;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import org.w3c.dom.Text;
TextView head ;
TextView info[] = new TextView[2];
CardView dis_content;
ImageView im[] = new ImageView[7];
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_disease);
head = findViewById(R.id.card_head);
dis_content = findViewById(R.id.cardView);
im[0] = findViewById(R.id.content_disease1);
im[1] = findViewById(R.id.content_disease2);
info[0] = findViewById(R.id.info1);
info[1] = findViewById(R.id.info2);
int i=0;
if (max == c[0]) {
im[i].setImageDrawable(getResources().getDrawable(R.drawable.d1));
info[i].setVisibility(View.VISIBLE);
info[i].setMovementMethod(LinkMovementMethod.getInstance());
info[i].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent browserIntent =28new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse("https://www.google.com/search?q=diarrhoea&oq=diarrho
ea&aqs=chrome..69i57.6104j0j1&sourceid=chrome&ie=UTF-8"));
startActivity(browserIntent);
}
});
i++;
}
if (max == c[1]) {
im[i].setImageDrawable(getResources().getDrawable(R.drawable.d2));
info[i].setVisibility(View.VISIBLE);
info[i].setMovementMethod(LinkMovementMethod.getInstance());
info[i].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse("https://www.google.com/search?ei=xOeZXb3KCIX6z7sPzom
csAg&q=malaria&oq=malaria&gs_l=psy-
ab.3..0i67l6j0l4.40811.43654..45013...0.2..3.187.1852.0j12......0....1..gws-
wiz.....6..0i71j0i362i308i154i357j0i131.J8tK4aVih7Y&ved=0ahUKEwi9vOLF2oflAhUF_XMBHc4E
B4YQ4dUDCAs&uact=5"));
startActivity(browserIntent);
}
});
i++;
}
if (max == c[2]) {
im[i].setImageDrawable(getResources().getDrawable(R.drawable.d3));
info[i].setVisibility(View.VISIBLE);
info[i].setMovementMethod(LinkMovementMethod.getInstance());
info[i].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse("https://www.google.com/search?ei=8ueZXf3XGcOzmge416S
oBw&q=typhoid&oq=typhoid&gs_l=psy-
ab.3..0i67l4j0j0i67l2j0l3.17165.19407..19806...0.2..3.188.1796.0j12......0....1..gws-
wiz.....6..0i71j0i362i308i154i357j0i131i67.gApJs810Cpo&ved=0ahUKEwj9mOvb2oflAhXDmeYKH
bgrCXUQ4dUDCAs&uact=5"));
startActivity(browserIntent);
}
});
i++;
}
if (max == c[3]) {
im[i].setImageDrawable(getResources().getDrawable(R.drawable.d4));
info[i].setVisibility(View.VISIBLE);
info[i].setMovementMethod(LinkMovementMethod.getInstance());
info[i].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse("https://www.google.com/search?ei=B-
iZXbSsB9PUz7sPnM6iUA&q=diabetes&oq=diabetes&gs_l=psy-
ab.3..0i67l3j0j0i67j0l5.20518.23074..23777...0.2..3.199.1955.0j13......0....1..gws-
wiz.....6..0i71j0i362i308i154i357j0i131j0i10i67.xxtksmH4CzM&ved=0ahUKEwj0y9rl2oflAhVT
6nMBHRynCAoQ4dUDCAs&uact=5"));
startActivity(browserIntent);
29
}
});
i++;
}
if (max == c[4]) {
im[i].setImageDrawable(getResources().getDrawable(R.drawable.d5));
info[i].setVisibility(View.VISIBLE);
info[i].setMovementMethod(LinkMovementMethod.getInstance());
info[i].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse("https://www.google.com/search?biw=1536&bih=754&ei=z-
iZXdi1GJOf9QPDubbICg&q=blood+pressure+precautions&oq=blood+pressure+precautions&gs_l=
psy-ab.3..0i67j0l2j0i22i30l7.4084.4084..4335...0.1..0.157.157.0j1....1..0....1..gws-
wiz.......0i71.XK6RSKLBd1o&ved=0ahUKEwiY2ZrF24flAhWTT30KHcOcDakQ4dUDCAs&uact=5"));
startActivity(browserIntent);
}
});
i++;
}
if (max == c[5]) {
im[i].setImageDrawable(getResources().getDrawable(R.drawable.d6));
info[i].setVisibility(View.VISIBLE);
info[i].setMovementMethod(LinkMovementMethod.getInstance());
info[i].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setData(Uri.parse("https://www.google.com/search?ei=juiZXaKeF4ne9QPZm6v
oDQ&q=heart+disease&oq=heart+diseas&gs_l=psy-
ab.3.0.0l10.21631.27511..29715...3.1..0.187.2294.0j15......0....1..gws-
wiz.......0i71j0i67j0i273j0i131j0i10j0i131i273.F4U-kXSmLO8"));
startActivity(browserIntent);
}
});
i++;
}
}
}
30
INSTRUMENTED TEST:
package com.ndkapp.www.mediconsult;
import android.content.Context;
import androidx.test.InstrumentationRegistry;
import androidx.test.runner.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("com.ndkapp.www.mediconsult", appContext.getPackageName());
}
}
31
TESTING;
Introduction
Software testing is the act of examining the artifacts and the behaviour of the software under
test by validation and verification. Software testing can also provide an objective, independent view of the
software to allow the business to appreciate and understand the risks of software implementation.
Types of Testing
Unit tests
Unit tests are very low level and close to the source of an application. They consist in testing individual
methods and functions of the classes, components, or modules used by your software. Unit tests are
generally quite cheap to automate and can run very quickly by a continuous integration server.
Integration tests
Integration tests verify that different modules or services used by your application work well together. For
example, it can be testing the interaction with the database or making sure that microservices work together
as expected. These types of tests are more expensive to run as they require multiple parts of the application
to be up and running.
Functional tests
Functional tests focus on the business requirements of an application. They only verify the output of an
action and do not check the intermediate states of the system when performing that action.
There is sometimes a confusion between integration tests and functional tests as they both require multiple
components to interact with each other. The difference is that an integration test may simply verify that you
can query the database while a functional test would expect to get a specific value from the database as
defined by the product requirements.
End-to-end tests
End-to-end testing replicates a user behavior with the software in a complete application environment. It
verifies that various user flows work as expected and32can be as simple as loading a web page or logging in
or much more complex scenarios verifying email notifications, online payments, etc...
Acceptance testing
Acceptance tests are formal tests that verify if a system satisfies business requirements. They require the
entire application to be running while testing and focus on replicating user behaviors. But they can also go
further and measure the performance of the system and reject changes if certain goals are not met.
Performance testing
Performance tests evaluate how a system performs under a particular workload. These tests help to measure
the reliability, speed, scalability, and responsiveness of an application. For instance, a performance test can
observe response times when executing a high number of requests, or determine how a system behaves
with a significant amount of data. It can determine if an application meets performance requirements, locate
bottlenecks, measure stability during peak traffic, and more.
Smoke Testing
Smoke tests are basic tests that check the basic functionality of an application. They are meant to be quick
to execute, and their goal is to give you the assurance that the major features of your system are working
as expected.
White box testing involves testing the product's underlying structure, architecture, and code to validate
input-output flow and enhance design, usability, and security.
Black box testing involves testing against a system where the code and paths are invisible.
33
Test Report
Test Report is a document which contains a summary of all test activities and final test results of a testing
project. Test report is an assessment of how well the Testing is performed. Based on the test report,
stakeholders can evaluate the quality of the tested product and make a decision on the software release.
34
IMPLEMENTATION
Implementation
Implementation is the stage of the project when the theoretical design is turned out into a
working system. Thus, it can be considered to be the most critical stage in achieving a successful new
system and in giving the user, confidence that the new system will work and be effective. The
implementation stage involves careful planning, investigating of the existing system and its constraints on
implementation, designing of methods to achieve changeover and evaluation of changeover methods.
Android Studio is an open source software. You can download and set up it from
the official website. After installing Android Studio, you have to setup the path
for SDK and download the desired API and desired emulator to test your
application.
4..2 Creating UI
You can design UI using XML in Android Studio. To create attractive UI, you can also
use Adobe XD.
• Symptoms Checker
• Nearby Hospitals
• SOS Call
35
FUTURE ENHANCEMENT:
Limitations
❑ Does not Cover up all the Diseases, as it will need ML as well as large Database.
❑ We have just prepared a Prototype.
Future Enhancements
36
CONCLUSION AND DISCUSSION
The project was a good experience for me. I think that from this project I learnt a lot
about how an official application works.
Problem Encountered
The importance of time bound and execution of work was realized. It gave me an
experience to develop application like big official applications.
The application is a user friendly and can be run by any person with the help of
android phone. The preparation of this project has helped a lot to learn the much
unknown features of Android studio and User Interface.
37
BIBILOGRAPHY:
References:
• https://developer.android.com
• https://www.youtube.com/watch?v=UDwj5j4tBYg
• https://www.youtube.com/watch?v=fGcMLu1GJEc
• https://www.youtube.com/watch?v=nxSdkiFcQxs
• https://www.zoftino.com/current-location-and-nearby-places-android-
example
• https://www.androidtutorialpoint.com/intermediate/google-maps-search-
nearby-displaying-nearby-places-using-google-places-api-google-maps-api-v2/
38