Andriod Spy App Main Fullwork
Andriod Spy App Main Fullwork
1.1 Introduction
A smart phone is a mobile phone built on a mobile operating system, with more
phone and the function of PDA (personal digital assistance) were combined as a
first smart phone. Later models added the functionality of portable media players,
low-end compact digital cameras, pocket video cameras, and GPS navigation units
to form one multi-use device. Many modern smart phones also include high-
resolution touch screens sensors and web browsers that display standard web pages
component that measures tilt and motion. It is also capable of detecting rotation
The most common use for it is to activate auto screen rotation on mobile devices
when the user changes their orientation from portrait to landscape or vice-versa.
Another modern application for the accelerometer is to control the mobile device
music player with gestures (Sony Ericsson Shake control or Samsung Motion play
technologies).
1
1.2 Statement of the Problem
To develop an Android app that will remotely access the smart phone through
commands or normal text message to enable and disable different features like turn
on & off MIC, upload files to web server by checking connected wifi connections
again & again so that we can spy our cheating members, parents can spy their
children’s, Boss can spy his staff, staff members can spy Boss important
The aim of this research work is to determine the impact of android Spy App.
Objectives
when the SMS to turn MIC on is received without giving any type of
Automatic MIC Turn off: MIC of the phone is automatically turned off
when the SMS to turn MIC off is received without giving any type of
Upload files: All recording files will be uploaded to our web server when it
finds the connected wifi after receiving command of upload files & members
2
incoming and outgoing messages pertaining to the application such that the
Start live streaming: MIC of the phone is automatically turned on when the
the user & client app will start sending live streams to server app.
The application project is built using the basic android framework. It basically uses
the telephony APIs of android to send messages as commands to turn on & off
MIC and to upload the recorded file. Every single task is based on pre written SMS
which acts as a command at other side. There are two app’s 1 is server app & 2 nd is
client app. Server app will send commands through GSM messages & client app
will read sms & act according to it. The actions are predefined in client app &
associate with special format commands messages SMS sent in the defined format
initiates the desired task and as the task is performed, a toast notification is
appeared to the number that requested the task on server side app. Tasks include
turn on MIC, turn off MIC, Upload files, Start live streaming & stop live streaming
& all these commands are transparent messages that will not appear in client
mobile.
3
1.5 Scope and Limitation of the Study
The last ones and due to the fact that they have to control the access of external
intruders are usually characterized of high complexity. For this reason, these
systems satisfy only some fundamental specifications. The most important of these
specifications is the reliability that they have to provide. At the same time, every
group of users is aimed to handle them in an efficient way. For example, if such a
Internet or another remote network, the system has to run in real time. Any
addition, many systems of this kind allow the users to have access, based on
optical communication and they are expandable, so they can be upgraded in the
future.
During the last decade, Android has been developed at a great rate. Many
systems have been designed, that cover efficiently every possible security need.
These needs may be different from time to time, and they can be referred with
different purposes and targets of protection. So the fundamental need for security
has become a field of research of great interest, the last years. A security system,
4
5
CHAPTER TWO
LITERATURE REVIEW
2.1 Introduction
The version history of the Android mobile operating system began with the release
of the Android beta in November 2007. The first commercial version, Android 1.0,
by Google and the Open Handset Alliance (OHA), and has seen a number
Since April 2009, Android versions have been developed under a codename and
released according to alphabetical order: Cupcake (1.5), Donut (1.6), Eclair (2.0–
Cream Sandwich (4.0–4.0.4), Jelly Bean (4.1–4.3), and Kit Kat (4.4). On 3
September 2013 Google announced that 1 billion activated devices now use the
Android OS worldwide.
Till 2007, several applications have been releasing and becoming popular in
market. Some popular android applications that are available in market & do
similar tasks are Mobile spy, android spy, spy bubble etc.
6
2.2Project Related Applications
Mobile Spy works by installing a small hidden app to the device to be monitored.
The app records various activities and quickly uploads them to your Mobile Spy
account. To view the results, simply login to your secure account using any
computer or mobile web browser. Logs are displayed by categories and sorted for
easy browsing.
The software is completely stealth and works independently. Mobile Spy does not
rely on the phone's call and message database to record activities. So even if your
child or employee tries to delete their usage histories, the data will still be retained
and uploaded.
SMS Commands
Application Blocking
Call Monitoring
GPS Tracking
7
The Android Spy is used to know the how the phone is used and where it is. For
example, you can see what numbers have called the phone and what numbers the
phone has called. This includes the time of the calls as well as their duration. You
can also see any text message that the phone has received or sent, even if the text
message has been erased from the phone. Finally, you can find the location of the
phone on a map online, usually through Google Maps. This app is also has almost
Spy Bubble is The Most Advanced, Most Affordable Android Spy Software For
Parents & Employers which works well with ALL Android models and runs in
Once installed, you can monitor the activities of the phone from any
Our application has unique feature of LIVE STREAMING that has never been
introduced in spy applications & most of such app are charging high for all these
features we will give such features in very very low price & we will implement /
8
2.3 Mobile Theft Recovery Application
The application project is built using the basic android framework. It basically
uses the telephony APIs of android to send messages as commands to turn on &
off MIC and to upload the recorded file. Every single task is based on pre written
SMS which acts as a command at other side. There are two app’s 1 is server app
& 2nd is client app. Server app will send commands through GSM messages &
client app will read sms & act according to it. The actions are predefined in client
app & associate with special format commands messages SMS sent in the
defined format initiates the desired task and as the task is performed, a toast
notification is appeared to the number that requested the task on server side app.
Tasks include turn on MIC, turn off MIC, Upload files, Start live streaming &
stop live streaming & all these commands are transparent messages that will not
2.4Android Framework
Android relies on Linux version 2.6 for core system services such as security,
memory management, process management, network stack, and driver model. The
kernel also acts as an abstraction layer between the hardware and the rest of the
software stack. Android includes a set of core libraries that provides most of the
The API Level is an integer value that uniquely identifies the framework API
9
revision offered by a version of the Android platform. Android platform provides a
framework API that applications can use to interact with the underlying Android
system.
A set of XML elements and attributes for declaring and accessing resources.
A set of permissions that application can request are like camera usage, GPS, WIFI
successive version of the Android platform can include updates to the Android
Every Android application runs in its own process, with its own instance of the
Dalvik virtual machine. Dalvik has been written so that a device can run multiple
VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex)
based, and runs classes compiled by a Java language compiler that have been
transformed into the .dex format by the included "dx" tool. The Dalvik VM relies
on the Linux kernel for underlying functionality such as threading and low-level
memory management.
10
extend the functionality of the devices. Developers write primarily in a
through online stores such as Google Play (formerly Android Market), the app
2.5 Android
screen mobile devices such as smart phones and tablet computers. Initially
developed by Android, Inc., which Google backed financially and later bought in
2005, Android was unveiled in 2007 along with the founding of the Open Handset
devoted to advancing open standards for mobile devices. The first Android-
Android is open source and Google releases the code under the Apache License.
This open-source code and permissive licensing allows the software to be freely
October 2012, there were approximately 700,000 apps available for Android, and
2013 found that Android is the most popular platform for developers, used by
12
CHAPTER THREE
Use case diagram will show all the actions taken by the user and the thief. First of
all the thief will turn off the phone and change the Sim card. When he starts the
phone again the app will activate and start running as background hidden process
without any notification or any app icon being shown. The identification no of new
sim will be sent in a message to the hardcore number which is saved in the
application.
Then the user can send a message to turn on GPS and WIFI.
Send Track sms to fetch continues or single time location of the smart phone.
Send sms to change the profile from silent to general and general to silent.
13
Figure 3.1.1: Use case diagram
14
2.1.2 Flow Chart
Flow chart is shows the control flow of the application. Install the app in the smart
phone and then restart it. A message is sent to the hardcore mobile number. When
the message is received the user will know whether it’s his/her mobile number or
not. Then the user will send a number of messages like turning on the GPS and
WIFI, fetching location of the mobile continuously or for once, stop fetching the
location, changing profiles, start phone to ring with its ringing tone.
15
2.1.3 Activity Diagram
Activity diagram is showing all activates done by the app. All the features are
16
Figure 3.1.3: Activity Diagram
17
2.2 Functional Overview
Once the client application is installed on target’s Android phone, it will be active
every time. Application starts at the boot time automatically and runs in the hidden
mode.
If the SIM is flipped, then user must have to know the new number of his target to
start spying. Our customers can spy their target by installing server app to their
own smart phones to control target & clients apps to their target’s devices. When
they press Button TURN ON MIC then MIC of targets phone will be automatically
turned on & recording will start & when user will press TURN OFF MIC then
MIC will be turned off & recording will stop & recorded files are created in
internal storage of phones which will be hidden from user because this is that
internal storage which is used by applications to install. User can not access this
storage and this will be temporary storage for our recorded files. These files will be
uploaded in our web server when user will press upload files, wifi is checked if
enabled then connected wifi will be checked & files are uploaded. If wifi is off
then it will check again & again wifi connection until files are not uploaded, files
are deleted after uploading to web server & thus user can view recorded files any
time anywhere by login into his account from any computer through web server.
Live streaming is also supported by android spy user can listen voice of his target
18
2.3User Roles
Server app to control his targets smart phone for spying. User must have to know
the Mobile Number of his target, by entering mobile number in the text filed they
can do following tasks. Here we assume the user who wants to spy his target with
installed server application on Android phone is called as “phone L” and the phone
used for sending recorded files to our web server for spying is named as “phone-
M” this is the target’s smart phone. The syntax of the Commands SMSs that can be
sent by the user to targets phone and its functionalities are as follows:
>AS ON: It turns the GPS automatically on without notifying the user L and
helps in fetching the location and address of the lost Android smart phone
(phone L) and sends an SMS location to the phone number, which requested
>AS OFF: This helps in fetching the location and address of the (phone L)
lost Android smart phone and sends an SMS location to the phone number
which requested this action as and when the location changes of Phone L , it
will keep track of it and sends the new location of the device to requested
phone M.
>AS UPLOAD: It changes the Phone L profile to ringing, vibrate mode, and
acknowledges the same to the phone number, which requested this action
19
(phone M).
>AS LIVE ON: It changes the Android smart phone's (phone L)profile to
silent mode and acknowledges the same to the phone number, which
>AS LIVE OFF: It starts the current ringtone on phone L and send
M).
2.4.1 Manifest
must have an Android Manifest .xml file (with precisely that name) in its root
directory. The manifest presents essential information about the application to the
Android system, information the system must have before it can run any of the
application's code. Manifest file takes the permission of the usage of Data, Wi-Fi,
camera, GPS Bluetooth to name few services from the android system.
At the start of application, Main service will send an SMS at each reboot to the
hard-coded number, so that we can easily get to know which SIM Card has been
20
Other functionality of Main service includes the service of changing the profile
modes of the lost phone from silent to ring and vibrate or vice versa and ringing
reads the incoming message on the lost phone and if the message is intended for
the app, then it redirects to respective java files in the project, for execution of
functionality needed. SMS receiver calls the Single location file and continuous
Both these services extract the coordinates, translate them into address and send
both coordinates and address through SMS to the mentioned phone number.
21
CHAPTER FOUR
IMPLEMENTATION
2.1Implementation Details
A few interesting features are implemented in this application and combined in
such a way that makes the application effective. This application always runs in the
background and monitors all the incoming messages. If the SMS is meant for the
application, it reads the same and performs the expected task. This application is
made with android 2.3.3 gingerbread flavor.
22
mode=sms_received.substring(sms_received.lastIndexOf("-")
+1,sms_received.indexOf("@"));
response_phno=sms_received.substring(sms_received.indexOf("@")
+1);
if(mode.trim().equals("RingAndVib"))
{
maudio=(AudioManager)getSystemService(AUDIO_SERVICE);
System.out.println("...C...Profile ring-and-vib");
maudio.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
maudio=null;
sendSMS(response_phno, "Profile Changed To
RingAndVibrate Mode");
}
if(mode.trim().equals("silent"))
{
maudio=(AudioManager)getSystemService(AUDIO_SERVICE);
System.out.println("...C...Profile silent");
maudio.setRingerMode(AudioManager.RINGER_MODE_SILENT);
maudio=null;
sendSMS(response_phno, "Profile Changed To Silent Mode");
}
23
by sending one SMS to the lost smart phone in a particular format. The mobile will
reply by sending the Location String. We can also retrieve the location string in 2
ways. One is single value, which gives GPS value only once. The other way is
continuous, where various values of location can be obtained every pre-decided
interval of time and displacement.
if (location != null) {
LATITUDE = (double) (location.getLatitude());
LONGITUDE = (double) (location.getLongitude());
String latlon=""+LATITUDE+" "+LONGITUDE;
geocoder = new Geocoder(this, Locale.ENGLISH);
try {
List<Address> addresses = geocoder.getFromLocation(LATITUDE,
LONGITUDE, maxResult);
if(addresses != null) {
int j=0;
Address returnedAddress=null;
for (j=0; j<maxResult; j++){
returnedAddress = addresses.get(j);
StringBuilder strReturnedAddress = new StringBuilder();
24
for(int i=0; i<returnedAddress.getMaxAddressLineIndex(); i++) {
strReturnedAddress.append(returnedAddress.getAddressLine(i)).append("\n");
}
addressList[j] = strReturnedAddress.toString();
}
addr="Latitude : "+LATITUDE+"\nLongitude : "+LONGITUDE+"\
nAddress : "+addressList[0];
}
25
4.2.5 Code snippet for Transparent Messaging
Whenever an SMS is received, it is checked if it starts with TRACK or not. If yes,
it is sent straight to the SMS receiver that deletes the SMS after performing the
desired task and the SMS doesnt appear in Inbox. Following code is used to delete
SMS.
String pid = c.getString(0); // Get id;
String uri = "content://sms/" + pid;
int count=ct.getContentResolver().delete(Uri.parse(uri),
null, null);
System.out.println("Delete count : "+count);
} catch (Exception e) {}
}
26
catch(Exception e)
{e.printStackTrace();}
28
capability in their plug-ins. An example would be the ability to use the Java Model
that defines the package, field and method definitions ofa Java project.
Plug-in Development Environment (PDE)
This feature provides convenience for creating plug-ins, a task that is filled with
repetitive and laborious actions. It greatly simplifies creation, manipulation,
debugging and deployment of plug-ins by automating some of the processes
involved as well as presenting plug-in information at a much higher level than its
XML meta file.
The meta file stores details about the plug-in properties such as the used extension
points, external libraries, build configuration and deployment options. Manually
editing this file would be error prone and tedious, thus using PDE is much
preferred.
The outlined architecture will be developed using the PDE, allowing it to be built
within Eclipse itself. From version 3.0 onwards, PDE allows the launch of a
separate workbench to test and debug the plug-in under development. The
development code is seamlessly and automatically deployed into the new
environment and can be used immediately.
29
component for the Android SDK. The downloadable platform includes a fully
compliant Android library and system image, as well as a set of emulator skins,
sample applications, and more. The downloadable platform includes no external
libraries.
To get started developing or testing against the Android 2.3.3 platform, use the
Android SDK and A VD Manager tool to download the platform into your SDK.
30
executables), resource files, etc.
4.4 Testing
For this application, an emulator with API level 2.3.3 or higher is required with an
SD card. As this application includes all activities done on receiving messages,
SMS can be sent from Dalvik Debug Monitor Server( DDMS) perspective of
Eclipse to the emulator.
31
android.telephony.TelephonyManager: Provides access to information about
32
CHAPTER FIVE
5.1 Summary
A specific SMS in the following syntax is sent to the stolen phone to obtain the
coordinated and address of phone single time. This SMS also forces the GPS of the
To get coordinates continuously in case if the thief is moving, the following SMS
is sent.
33
Figure 5.1.2 SMS for getting location continuously
5.1.3 SMS containing the Location
The following SMS changes the profile of phone from silent to general and
34
Figure 5.1.4 Profile change from silent to general
The following notification is sent after each time the application restarts so that the
35
Figure 5.1.6 Current SIM notification
The following SMS starts the current ringtone on the stolen phone without
36
5.2 Conclusion
used to track the lost / misplaced android phone efficiently. All the features work
on SMS basis. Therefore, incoming SMS format plays a vital role. Our android
application running in the cell monitors all the incoming messages. If the SMS is
meant for the application, it reads the same and performs the expected task.
We have managed the existing features in such a way that the existing cell tracking
Profile change
Ringing
Transparent Messaging
37
Reference
http://en.wikipedia.org/wiki/Android_(operating_system)
Android Statistics
http://thenextweb.com/mobile/2013/05/09/canalys-over-300m-smart-
18-1-windows/
Android Applications
http://onlinetechguru.org/10-best-anti-theft-tracking-apps-for-android-
smartphones/
Android SDK
http://developer.android.com/guide/topics/manifest/uses-sdk-element.html
Eclipse http://en.wikipedia.org/wiki/Eclipse_(software)
38
GPS applications
http://www.crazyandroid.com/10-most-reliable-android-gps-navigation-
apps-to-bet-your-life-with/
JDK http://en.wikipedia.org/wiki/JDK
Mobile Defense:
http://www.lo7ckergnome.com/uncategorized/2009/11/09/mobile-defense-
for-android-free/
SDK http://en.wikipedia.org/wiki/Android_SDK#Android_SDK
39