Chapter 1
INTRODUCTION
1.1 Problem Definition
Android is one of the most widely using OS in devices like smart phones,smart
watches,smart TV,tablets and recently in cars with automated functions.Android device users
use lots of application to be integrated on it. The application provides the user with friendly
interface to use real mobile in an optimal way. In present day scenario applications in world
use many communication medium to interact each other. Examples of such applications are
applications that uses Bluetooth,wlan etc. as communication methods.
1.2 Objectives of our project
The main objective of our project is connect different people that are in the range of
same WLAN access point.This will be completely free and no external source of internet
will be needed.The chat will be public, means messages will be broadcasted to every user that
is connected.This application will be developed in the java programming language using the
android software development kit(SDK).The development platform or integrated
development environment(IDE) is eclipse using the android development tools(ADT) Plugin.We will develop an application where user does not need any web browser to chat with
other user.It has its own user interface.The user can connect to any available access point for
chat with another user connected with the same access point.Tethering and portable hotspot
utility available on android can also be used for creating an access point.User Datagram
Protocol (UDP) is used for sending the packets across the network.
Chapter 2
SCOPE OF PROJECT
Wi-Fi P2P communication will be able to communicate between two Wi-Fi enabled devices
using point to point communication.Company premises,institutions like colleges,hospitals
etc. would like to have acommunication software wherein they can communicate instantly
within the organization.The fact that software uses an internal network setup within the
organization makes it very secure from outside attacks.
Chapter 3
LITERATURE SURVEY
3.1 Overview of JAVA Eclipse
Eclipse is a multi-language software development environment comprising an
integrated development environment (IDE) and an extensible plug-in system. It is written in
Java, which can be used to develop applications in Java, by means of various java plug-INS,
also through other programming languages including eclipse.
The initial codebase originated from Visual Age. In its default form it is meant for
Java developers, consisting of the Java Development Tools (JDT). Users can extend its
abilities by installing plug-ins written for the Eclipse software framework, such as
development toolkits for other programming languages, and can write and contribute their
own plug-in modules.
Eclipse employs plug-ins in order to provide all of its functionality on top of (and
including) the runtime system, in contrast to some other applications where functionality is
typically hard coded.
The Eclipse SDK includes the Eclipse Java Development Tools (JDT), offering an
IDE with a built-in incremental Java compiler and a full model of the Java source files. This
allows for advanced refactoring techniques and code analysis. The IDE also makes use of a
workspace, in this case a set of metadata over a flat file space allowing external file
modifications as long as the corresponding workspace "resource" is refreshed afterwards.
3.2 Overview of JDK
The Java Development Kit (JDK) is an Oracle product aimed at Java developers.
Since the introduction of Java, it has been by far the most widely used Java SDK .
Components of JDK:
java the loader for Java applications. This tool is an interpreter and can interpret the
class files generated by the javac compiler. Now a single launcher is used for both
development and deployment. The old deployment launcher, jre, no longer comes
with JDK.
javac the compiler, which converts source code into Java bytecode.
jar the archiver, which packages related class libraries into a single JAR file. This
tool also helps manage JAR files.
javadoc the documentation generator, which automatically generates documentation
from source code comments.
jdb the debugger.
jps the process status tool, which displays process information for current Java
processes.
javap the class file disassembler.
appletviewer this tool can be used to run and debug Java applets without a web
browser.
javah the C header and stub generator, used to write native methods.
3.3 Overview of Android API
Android is suitable for a wide variety of devices like smart
phones,tablets,smartTV,smart watches. The core Android APIs will be available on every
Android phone, but there are a few APIs which have special concerns the APIs.
Some of the Android APIs is as follows:
WIFI P2P API This consist of methods that allow you to discover,request and
connect to peers are defined in WifiP2pManager class.
Media APIs The Media APIs are used to play media files. This includes both audio
and video.Support is included for "playing URIs" that is, streaming media data
over the network.
3D Graphics with OpenGL Android's primary user interface framework is a typical
widget-oriented class hierarchy. Don't let that fool you, though sitting underneath
that is a very fast 2D and 3D compositing engine, with support for hardware
acceleration. The API used to access the 3D capabilities of the platform is the
OpenGL ES API.
Low-Level Hardware Access Android will include APIs for accessing low-level
hardware such as Accelerometer, Bluetooth and WiFi. These APIs, however, are not
yet available in the SDK. When they are released, this documentation will be updated.
3.4 Overview of Android Development Tool
The Android SDK includes a variety of custom tools that help you develop mobile
applications on the Android platform. Three of the most significant tools are:
Android Emulator -A virtual mobile device that runs on our computer -use to design,
debug, and test our applications in an actual Android run-time environment.
Android Development Tools Plug-in -for the Eclipse IDE - adds powerful
extensions to the Eclipse integrated environment.
Dalvik Debug Monitor Service (DDMS) -Integrated with Dalvik -this tool let us
manage processes on an emulator and assists in debugging.
Android Asset Packaging Tool (AAPT) Constructs the distributable Android
package files (.apk).
Android Debug Bridge (ADB) provides link to a running emulator. Can copy files
to emulator, install .apk files and run commands.
3.5 Wi-Fi
Wi-Fi (or, incorrectly but commonly, WiFi) is a local area wireless technology that
allows an electronic device to participate in computer networking using 2.4 GHz UHF and 5
GHz SHF ISM radio bands.
The Wi-Fi Alliance defines Wi-Fi as any "wireless local area network" (WLAN) product
based on the Institute of Electrical and Electronics Engineers' (IEEE) 802.11 standards".[1]
However, the term "Wi-Fi" is used in general English as a synonym for "WLAN" since most
modern WLANs are based on these standards. "Wi-Fi" is a trademark of the Wi-Fi Alliance.
3.6 Wi-Fi Peer-to-Peer
Wi-Fi peer-to-peer(P2P) allows Android 4.0(API level 14) or later devices with the
appropriate hardware to connect directly to each other via Wi-Fi without an intermediate
access point.Using this APIs, you can discover and connect to other devices when each
device supports Wi-Fi P2P, then communicate over a speedy connection across distances
much longer than a Bluetooth connection.This is useful for applications that share data
among users,such as file sharing and voice call etc.
Chapter 4
REQUIREMENTS SPECIFICATION
4.1 Software Requirements:
Java Eclipse IDE:Eclipse 3.6.2 or higher.
Oracle JDK
Android Software Development Kit
Android Development Tools for Eclipse
4.2 Hardware Requirements:
Desktop or laptop system.
Android 2.2 Enabled Device or Higher with Wi-Fi receiver
Wi-Fi router
Chapter 5
EXPECTED OUTCOME
1.voice call
2.confereence call
3.voice message
4.sharing file
5.Text message