Final Report of Chatting App
Final Report of Chatting App
A Mini-Project Report
On
“CHATTING APPLICATION”
Submitted by
AISHWARYA C SHEKAR
[1CG18CS002]
AND
MITHUN ARADHYA
[1CG17CS057]
Guide: HOD:
Mr. Anil Kumar G MTech Dr.Shantala C P PhD
Coordinator, Dept. of CSE Vice Principal & Head,
CIT, Gubbi. Dept. of CSE
CIT, Gubbi.
CERTIFICATE
This is to certify that the project entitled “CHATTING APPLICATION” has
been successfully carried out by AISHWARYA C SHEKAR[1CG18CS002] AND
MITHUN ARADHYA[1CG17CS057] in partial fulfillment for the VI semester during
the academic year 2020 - 21. It is certified that all the corrections / suggestions indicated
for internal assessment have been incorporated in the report. The project report has been
approved as it satisfies the academic requirements in respect of project work prescribed
for the V semester.
Signature of Principal
Dr. Suresh D S
Principal
CIT, Gubbi
External Viva
Name of Examiners Signature with date
1.
2.
Channabasaveshwara Institute of Technology
(Affiliated to VTU, Belgaum & Approved by AICTE, New Delhi)
(NAAC Accredited & ISO 9001:2015 Certified Institution)
NH 206 (B.H. Road), Gubbi, Tumkur – 572 216. Karnataka.
DECLARATION
MITHUN ARADHYA
1CG17CS057
ABSTRACT
Communication through internet is becoming vital these days. An online communication
allows the users to communicate with other people in a fast and convenient way.
Considering this, the online communication application must be able share the texts or
images or any other files in a faster way with minimum delay or with no delay. Firebase
is one of the platforms which provides a real-time database and cloud services which allows
the developer to make these applications with ease. Instant messaging can be considered as
a platform to maintain communication. Android provides better platform to develop
various applications for instant messaging compared to other platforms such as iOS.
The main objective of this paper is to present a software application for the launching of
a real time communication between operators/users. The system developed on android
will enable the users to communicate with another users through text messages with the
help of internet. The system requires both the device to be connected via internet. This
application is based on Android with the backend provided by google firebase. In the real
world the communication plays a very vital role. People have been communicating with
each other through various applications or mediums. In the beginning people
communicated with each other using letters or other sources, as these mediums could take
much time to deliver the content. Cell phones are another medium of communication but the
drawback is for any limited or small message which need to be passed to another user then
phone call is not an ideal way. The developers then looked to implement a text-based
communication which would allow an in instant communication service. The basic goal
is to create a system which can create chatroom according to the users and store the related
data at a single place. To implement the real time chatting application which can allow the
user to make instant group messages. Implementing google firebase cloud and real time
databases to store the data. It is an internet based instant messaging application which
provides the user to communicate with other users in a fast and convenient way . Both the
devices must have an active internet connection for the communication. There are many
other chat applications like WeChat, hike, WhatsApp, Telegram, Facebook messenger,
Snap Chat, Line etc but in this system the pdf creation and pdf reading feature will be
included. As a part of day to day life, academic or professional life users need to send
and receive files.
i
ACKNOWLEDGEMENT
A great deal of time and lot of effort has gone into completing this project report and
documenting it. The number of hours spent in getting through various books and other
materials related to this topic chosen by me have reaffirmed its power and utility in doing this
project.
Several special people have contributed significantly to this effort. First, I am grateful
to our institution Channabasaveshwara Institute of Technology, Gubbi, which provides me
an opportunity in fulfilling my most cherished desire of reaching the goal.
I acknowledge and express my sincere thanks to our beloved Principal and Director
(Tech.) Dr. Suresh D S for his many valuable suggestions and continuous encouragement and
support in the academic endeavours.
I express our sincere gratitude to Dr. Shantala C P, Vice Principal& Head, Department
of CSE, for providing his constructive criticisms and suggestions and Engineering for his
guidance on how to approach an engineering problem and come up with a solution in an
organized manner.
Project Associate:
AISHWARYA C SHEKAR[1CG18CS002]
MITHUN ARADHYA[1CG17CS057]
ii
CONTENTS
ABSTRACT i
ACKNOWLEDGEMENT ii
CHAPTER PAGE NO
1. INTRODUCTION 01
2. REQUIREMENT SPECIFICATION 04
2.1 SYSTEM REQUIREMENTS
2.2 DEVELOPMENT ENVIRONMENT
3 SYSTEM DESIGN 06
4 SYSTEM IMPLEMENTATION 08
5 SAMPLE OUTPUT 12
6 CONCLUSION 20
7 BIBILIOGRAPHY 21
iii
iv
CHATTING APP 2020-21
CHAPTER 1
INTRODUCTION
The project titled “Chatting App” is messaging application for sending messages. In the real world
the communication plays a very vital role. People have been communicating with each other
through various applications or mediums. In the beginning people communicated with each other
using letters or other sources, as these mediums could take much time to deliver the content. Cell
phones are another medium of communication but the drawback is for any limited or small
message which need to be passed to another user then phone call is not an ideal way. The
developers then looked to implement a text-based communication which would allow an in
instant communication service. In 1984, the concept of SMS was developed in the Franco
German GSM cooperation by Friedhelm Hillebrand and Bernard Ghillebaert. The limitation of
SMS was the limited size i.e., 128 bytes, after the rise of smartphones from a decade many
messaging applications have been developed. Some are Bluetooth based and some were internet
based such as WhatsApp, WeChat and others. Android is an operating system for mobiles
which was developed by google.This operating system allows the applications to be used on
mobiles. As it was developed by google, android users can develop mobile applications and can
be sold through android application stores such as play store. Firebase is a NoSQL database which
make use of sockets which allows the users to store and retrieve the data from the database . An
Android version should be greater than 2.3, android studio 1.5 or higher version, and android studio
project are the prerequisites to connect the firebase to an android application. Firebase provides
a various kind of services such as: Firebase Authentication: Firebase Authentication is useful
to both developers and the users. Developing and maintaining sign-in set-up may be a bit
difficult and time taking. Firebase provides an easy API for sign in. It also provides the data
backup using real time databases. Firebase cloud: For storing the data such as video, text, pictures
building the infrastructure would be difficult and expensive for a new developer so the firebase
provides the platform of cloud storage. Real time database: It is a cloud hosted NoSQL database.
Apart from the authentication, cloud service and real time databases firebase also provides a
service for crash reporting Crash Reporting: when some unexpected crashes occur in any
applications it may be difficult to conclude why the application crashed. Firebase provides
crash reporting service to deal with these crashes. This paper is concerned of a software
application for the establishment of a real time communication services between operators/users.
Chat application many-to-many type of communication system where the users will able to
exchange the messages among themselves.
1.1 Android
Android is a mobile operating system (OS) currently developed by Google, based on the Linux
kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets.
Android's user interface is mainly based on direct manipulation, using touch gestures that loosely
correspond to real-world actions, such as swiping, tapping and pinching, to manipulate on-
screen objects, along with a virtual keyboard for text input. In addition to touchscreen devices,
Google has further developed Android TV for televisions, Android Auto for cars, and Android
Wear for wrist watches, each with a specialized user interface. Variants of Android are also used
on notebooks, game consoles, digital cameras, and other electronics. Initially developed by
Android, Inc., which Google bought in 2005, Android was unveiled in 2007, along with the
founding of the Open Handset Alliance –a consortium of hardware, software, and
telecommunication companies devoted to advancing open standards for mobile devices. As of
July 2013, the Google Play store has had over one million Android applications downloaded. An
applications ("apps") published, and over 50 billion April–May 2013 survey of mobile
application developers found that 71% of developers create applications for Android, and a 2015
survey found that 40% of full-time professional developers see Android as their priority target
platform. About 70 percent of Android smartphones run Google's ecosystem; some with vendor-
customized user interface and software suite, such as TouchWiz and later One UI by Samsung,
and HTC Sense. Competing Android ecosystems and forks include Fire OS (developed by
Amazon) or LineageOS. However the "Android" name and logo are trademarks of Google which
impose standards to restrict "uncertified" devices outside their ecosystem to use Android
branding. Android has been the best-selling OS worldwide on smartphones since 2011 and on
tablets since 2013. As of May 2021, it has over three billion monthly active users, the largest
installed base of any operating system, and as of January 2021, the Google Play Store features
over 3 million apps.The current stable version is Android 11, released on September 8, 2020.
1.2 OBJECTIVES
The basic goal is to create a system which can create chatroom according to the users and store
the related data at a single place. To implement the real time chatting application which can
allow the user to make instant group messages. Implementing google firebase cloud and real
time databases to store the data. It is an internet based instant messaging application which
provides the user to communicate with other users in a fast and convenient way . Both the
devices must have an active internet connection for the communication. There are many other
chat applications like WeChat, hike, WhatsApp, Telegram, Facebook messenger, Snap Chat,
Line etc but in this system the pdf creation and pdf reading feature will be included. As a part
of day to day life, academic or professional life users need to send and receive files. By using
this system, the user need not have any other pdf reader-writer application on the device. Using
this application user can communicate with any user all over the world. In this application
we are using Google firebase as the backend to store the data of the application such as
messages, pictures, files and more. User has to register or sign-in through their respective mail id
and can use the services. When the user sign-in to the application, user can search for another
user where the communication is need to be done. The user can be able to delete the chat after
the communication. User can create their profile according to which other users will be able to
identify each other. This application is designed of android mobile phone users. User can
respond to the messages received by just typing the reply message and press the send button .
This application also provides the user to delete the account. User can also sign-out from the
present device and can sign-in through another.
1.3 METHODOLOGY
This project is made by using Android studio, Virtual emulator. The programming languages used
for building the application are Java, XML.
User interface is handled using XML codes. Backend programming is handled mainly through set
of java codes.
The other libraries required are:
• Android SDK tools
• Android SDK platform tools
• Android SDK build tools
• SDK platform
• Intel x86 Atom_64 System Image
• Google APIs
• Google APIs ARM EABI v7a System Image
• GPU Debugging tools
• Android Support Library
• Intel x86 Emulator Accelerator (HAXM installer)
CHAPTER 2
REQIREMENT SPECIFICATION
Android Studio is an integrated development environment (IDE) for developing for the Android
platform. It was announced on May 16, 2013 at the Google I/O conference. Android Studio is
freely available under the Apache License 2.0. Android Studio was in early access preview stage
starting from version 0.1 in May 2013, then entered beta stage starting from version 0.8 which was
released in June 2014. The first stable build was released in December 2014, starting from version
1.0. Based on JetBrains' IntelliJ IDEA software, Android Studio is designed specifically for
Android development. It is available for download on Windows, Mac OS X and Linux, and
replaced Eclipse Android Development Tools (ADT) as Google's primary IDE for native Android
application development.
CHAPTER 3
SYSTEM DESIGN
1.SIGN IN
The user must register in order to login, the user must login in order to send messages to those
who are online, and must be able to logout if the user wants to logout.
2. LOGIN IN
After signing in or registering, the user must login in with the registered mail-id and password.
On successful login the user enters into his/her profile.
3. PASSWORD RESETTING
If the user fails to remember the password during loging in ,the user can go for the option forgot
password. During which the user is required to enter the email-id to which the password reset
link will be sent.
4. ONLINE MENU
After the client is logged in, the client can choose to send a message, only if another
client is online, check who is online, and be able to logout when the client wants to,
which will be by logging out by hitting the logout button or by hitting the exit button.
5. USERS
When the client wants to see who is online, the client clicks the “users” menu and the client can
choose who to message, by double clicking the name.
6. MESSAGE
When the client wants to message the user, the client clicks on the name, the user can send a
message to another online user. Some character limitations for typing might be put into place,
only if it is necessary.
7.LOG OUT
The user can logout whenever he wants by clicking on the logout option in the top right corner,
which takes back the user back to the register page.
CHAPTER 4
SYSTEM IMPLEMENTATION
Fig-4.1
Fig-4.2
Fig-4.3
Fig-4.4
Fig-4.5
Fig-4.6
CHAPTER 5
SAMPLE OUTPUT
CHAPTER 6
CONCLUSION
With Firebase real-time database, we can build a simple chat application without any single line
of server-side code. The main objective of the project is to develop a Secure Chat Application. I
had taken a wide range of literature review in order to achieve all the tasks, where I came to know
about some of the products that are existing in the market. I made a detailed research in that path
to cover the loop holes that existing systems are facing and to eradicate them in our application.
In the process of research I came to know about the latest technologies and different algorithms.
There is always some place for enhancements in any software application, however good
and efficient the application may be. Right now, we are dealing with only the instant messaging
between the peers. In future the application may further developed to include some features
such as 1. Voice messaging. 2. Group calling 3. Live streaming 4. Messages auto delete after a
given time. 5. Personalized message tunes. And a messaging application feature which allows
the user to create chat room while in conversation with another user by just sending the chatroom
name with the hash symbol at the beginning.
CHAPTER 7
BIBLIOGRAPHY
2. http://github.org
3. https://youtu.be/vp8nmNFcEEM