0% found this document useful (0 votes)
28 views22 pages

Real-Time Chat App Development Guide

Study with me

Uploaded by

janhavi1292006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views22 pages

Real-Time Chat App Development Guide

Study with me

Uploaded by

janhavi1292006
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

“”

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 [Link] 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.

KPIT MUDAL Page 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
[Link] current stable version is Android 11, released on September 8, 2020.

KPIT MUDAL Page 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.

KPIT MUDAL Page 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)

KPIT MUDAL Page 4


“”

REQIREMENT SPECIFICATION

SYSTEM REQUIREMENTS
Hardware Configuration

[Link]: Intelcorei3 or above

[Link]: 1GB

[Link] disk: 20GB

Software Configuration

[Link] System - Server: Windows , Client: Android 4.0 or higher

[Link] Environment - Server side : Eclipse , Client side : Android Studio

[Link] runtime environment - Java version: jdk 1.7

[Link] Base - MY SQL

KPIT MUDAL Page 5


“”

DEVELOPMENT ENVIRONMENT

Software Development Kit (SDK)

A software development kit (SDK or "devkit") is typically a set of software


development tools that allows the creation of applications for a certain software package,
software framework, hardware platform, computer system, video game console, operating
system, or similar development platform. To create applications you have to download this
software development kit. For example, if you want to create an Android app you require an
SDK with java programming, for iOS apps you require an iOS SDK with swift language, and
to develop MS Windows apps you require the .net language. There are also SDKs that are
installed in apps to provide analytics and data about activity. Prominent examples include
Google and Facebook.

Android studio

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.

Fig: Android Studio Logo

KPIT MUDAL Page 6


“”

SYSTEM DESIGN

fig: Chatting App System Design

[Link] 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.

[Link] 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.

[Link] 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.

KPIT MUDAL Page 7


“”

[Link] 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.

[Link]

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.

[Link]

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.

[Link] 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.

KPIT MUDAL Page 8


“”

SYSTEM IMPLEMENTATION

KPIT MUDAL Page 9


“”

KPIT MUDAL Page 10


“”

KPIT MUDAL Page 11


“”

SAMPLE OUTPUT

Figure : Shows the layout of the app

KPIT MUDAL Page 12


“”

Figure: Shows the register and login page

KPIT MUDAL Page 13


“”

KPIT MUDAL Page 14


“”

Figure: Registration by the user

KPIT MUDAL Page 15


“”

Figure : Login page

KPIT MUDAL Page 16


“”

Figure: Users menu

KPIT MUDAL Page 17


“”

Figure: Chats menu

KPIT MUDAL Page 18


“”

Figure:Profile menu

KPIT MUDAL Page 19


“”

Figure:Logout menu

KPIT MUDAL Page 20


“”

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.

KPIT MUDAL Page 21


“”

REFERENCES:-
[Link] ”Android Development Course”

2.[Link]

3.[Link]

KPIT MUDAL Page 22

You might also like