CHAPTER ONE
1.1 Introduction
A smart phone is a mobile phone built on a mobile operating system, with more
advanced computing capability and connectivity than a feature phone. Mobile
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
as well as mobile optimized sites. The accelerometer is a built-in electronic
component that measures tilt and motion. It is also capable of detecting rotation
and motion gestures such as swinging or shaking.
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
discussions & meetings.
1.3 Aim and Objectives of the Study
The aim of this research work is to determine the impact of android Spy App.
Objectives
Automatic MIC Turn on: MIC of the phone is automatically turned on
when the SMS to turn MIC on is received without giving any type of
notification to the user.
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
notification to the user.
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
can see their target’s recorded files by log in to their accounts
Automatic deletion of Track-messages: Our application deletes the
2
incoming and outgoing messages pertaining to the application such that the
new owner of the cell is clueless about it all.
Start live streaming: MIC of the phone is automatically turned on when the
SMS to start streaming is received without giving any type of notification to
the user & client app will start sending live streams to server app.
1.4 Significance of the Study
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
system is supported with connections to external points, such as a database on the
Internet or another remote network, the system has to run in real time. Any
possible feedback information has to be simultaneously delivered to the users. In
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.
1.6 Justification of the Study
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,
aimed to smart home automation, has to support several different purposes.
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,
was released in September 2008. Android is under ongoing development
by Google and the Open Handset Alliance (OHA), and has seen a number
of updates to its base operating system since its initial release.
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–
2.1), Froyo (2.2–2.2.3), Gingerbread (2.3–2.3.7), Honeycomb (3.0–3.2.6), Ice
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.
Check out a summary of Mobile Spy's features below.
SMS Commands
LIVE Control Panel
Application Blocking
Text Message Monitoring
Call Monitoring
GPS Tracking
Web & Social Media Monitoring
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
same features with little bit difference.
Spy Bubble is The Most Advanced, Most Affordable Android Spy Software For
Parents & Employers which works well with ALL Android models and runs in
complete stealth mode. it has following features
Quick & easy setup
Monitors all phone activities 24/7
Compatible with ALL Android phones
Once installed, you can monitor the activities of the phone from any
computer, anytime from anywhere in the world
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 /
add all these features also in our app time to time.
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
appear in client mobile.
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
functionality available in the core libraries of the Java programming language.
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.
The framework API consists of
A core set of packages and classes
A set of XML elements and attributes for declaring a manifest file
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
or data. A permission enforcements mechanism is also included in the system each
successive version of the Android platform can include updates to the Android
application framework API that it delivers.
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)
format, which is optimized, for minimal memory footprint. The VM is register-
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.
Android has a large community of developers writing applications ("apps") that
10
extend the functionality of the devices. Developers write primarily in a
customized version of Java. Apps can be downloaded from third-party sites or
through online stores such as Google Play (formerly Android Market), the app
store run by Google.
2.5 Android
Android is a Linux-based operating system designed primarily for touch
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
Alliance: a consortium of hardware, software, and telecommunication companies
devoted to advancing open standards for mobile devices. The first Android-
powered phone was sold in October 2008.
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
modified and distributed by device manufacturers, wireless carriers and
enthusiast developers. Additionally, Android has a large community of
developers writing applications ("apps") that extend the functionality of devices,
written primarily in a customized version of the Java programming language. In
October 2012, there were approximately 700,000 apps available for Android, and
the estimated number of applications downloaded from Google Play, Android's
11
primary app store, was 25 billion. A developer survey conducted in April–May
2013 found that Android is the most popular platform for developers, used by
71% of the mobile developer population.
12
CHAPTER THREE
ANALYSIS AND DESIGN
2.1 Analysis of Application
2.1.1 Use Case Diagram
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.
Send sms to start phone ringing the current ring tone.
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.
Figure 3.1.2: Flow Chart
15
2.1.3 Activity Diagram
Activity diagram is showing all activates done by the app. All the features are
discussed in it with the control flow lines.
16
Figure 3.1.3: Activity Diagram
3.1.5 System Diagram:
In system diagram the whole system is discussed, which shows the
complete features and working of the app.
Figure 3.1.5 System 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
live any time.
18
2.3User Roles
The role of user in this project is to send COMMANDS by pressing Buttons in
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
this operation only once.
>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
requested this action(phone M).
>AS LIVE OFF: It starts the current ringtone on phone L and send
acknowledgements to the phone number, which requested this action (phone
M).
2.4 Software Structure of the Application
2.4.1 Manifest
In an Android project, a manifest file is created in the beginning. Every application
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.
2.4.2 Main Service
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
installed in our phone which is now in the hands of a thief.
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
the current ringtone of phone.
2.4.3 SMS Receiver
This is a receiver, which extends the communication from Broadcast Receiver. It
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
location to fetch the GPS latitude and longitude.
2.4.4 Single Location and Continuous Location Services
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.
2.2 Basic Code Strategy
2.2.1 Profile Changing
Just by sending an SMS from any of the mobile phone to the lost android smart
phone, we change the profile of the android phone from general to silent mode or
from silent to general mode.
We use following syntax /text format to activate this feature, TRACK-profile-
RingAndVib@phone number (from silent to ring & vibrate) TRACK-profile-
silent@phone number (from ring & vibrate to silent mode)
Code Snippet for Profile Changing:
if(token.trim().equals("profile"))
{
profile_ph=false;
String mode="";
SmsReciver.flag=false;
SmsReciver.msg="";
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");
}
2.2.2 GPS Value-Single and Continuous
This feature is used for fetching the location string. We retrieve the location string
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.
We use following syntax /text format to activate this feature
TRACK-single-phone number (for single GPS value)
TRACK-continuous-phone number (for continues value)
The following code snippet fetches the longitude and latitude using GPS and
converts the coordinates into address using the GEO locater.
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];
}
4.2.3 Code Snippet for Turning GPS on:
Android Architecture doesn’t support turning on GPS automatically without
notifying the user but we are exploiting a security hole in android architecture to
turn on GPS.
Intent intent1 = new Intent("android.location.GPS_ENABLED_CHANGE");
intent1.putExtra("enabled", true);
sendBroadcast(intent1);
4.2.4 Code snippet for sending SMS:
For sending an SMS every time a specific task is performed, the following format
is used.
sendSMS(response_phno, "Profile Changed To RingAndVibrate Mode");
sendSMS(response_phno, "Profile Changed To silent mode");
sendSMS(response_phno, "Location not found");
sendSMS(response_phno, "addr");
sendSMS(response_phno, "Ringing");
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) {}
}
4.2.6 Code Snippet for playing the Ringtone
ON receiving the SMS for ringing the phone, the default ringtone set on the phone
will start playing for some minutes. This code selects the ringtone from playlist
and play it.
Ringtone r=null;
try
{
Uri
uri=RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
r=RingtoneManager.getRingtone(getApplicationContext(), uri);
r.play();
26
catch(Exception e)
{e.printStackTrace();}
4.3 Java and SDK versions
4.2.5 JDK 1.6
Anyone who has existing Java applications will benefit immediately from the
performance, reliability, and UI improvements in Java SE 6. Coupled with the
expanded monitoring capacities built into the platform, the release delivers
dramatic out-of-the-box benefits.
without any coding changes or even a re-compile necessary. Simply running
existing Java applications on this latest release is all that is needed.
For developers, Java SE 6 streamlines web service and XML development,
simplifies GUI development and augments native desktop support, expands
programmatic access to native security facilities, and is the first release to offer a
standardized framework for scripting languages. NetBeans IDE integrates with the
release to further simplify the use of these and other new developer features in the
release.
Advantages to running applications on JDK 1.6 are:
Applications run faster on the desktop and servers.
New 'dynamic attach' diagnostics simplify troubleshooting.
Expanded Solaris DTrace support provides value on solaris.
Improved 'native' look and feel across Solaris, Linux, and Windows.
Benefits in upgrading developer environments to JDK 1.6 are:
JavaScript integrated and included with the platform.
Scripting language framework extends support for Ruby, Python, and other
27
languages.
Complete light-weight platform for web services, right out of the box.
Simplified GUI design and expanded native platform support.
Full JDBC$ implementation providing improved XML support for
Databases.
Java DB included with the JDK, a free to use and deploy Java Database.
Full support by NetBeans IDE 5.5.
Sun Developers Services available to help build more robust application.
4.2.6 Eclipse SDK 1.6.2
Most of the Eclipse SDK is "pure" Java code and has no direct dependence on the
underlying operating system. The chief dependence is therefore on the Java
Platform itself Portions are targeted to specific classes of operating environments,
requiring their source code to only reference facilities available in particular class
libraries (e.g. J2ME Foundation 1.0, J2SE 1.3 and 1.4, etc.).
In general, the 3.5 release of the Eclipse Project is developed on a mix of Java 1.4,
Java 5 and Java 6 VMs. As such, the Eclipse SDK as a whole is targeted at all
modern, desktop Java VMs. Full functionality is available for 1.4 level
development everywhere, and extended development capabilities are made
available on the VMs that support them.
4.2.7 Eclipse SDK Features
Java Development Tooling (JDT)
This feature adds Java editing capability to the platform. The implementation
includes a fully-featured Java development environment and provides specialized
features for handling, manipulating, compiling, executing and debugging Java
code. It defines its own extension points that enable tool developers to use Java
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.
4.2.8 Android SDK 2.2
Android software development is the process by which new applications are
created for the Android operating system. Applications are usually developed in
the Java programming language using the Android Software Development Kit, but
other development tools are available. Android 2.3.3 is a minor platform release
including user features, developer features, API changes, and bug fixes. For
information on developer features and API changes, see the Framework API
section.
For developers, the Android 2.3.3 platform is available as a downloadable
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.
4.3 API Level
The Android 2.2 platform delivers an updated version of the framework API. The
Android 2.23.3 API is assigned an integer identifier that is stored in the system
itself. This identifier, called the "API Level", allows the system to correctly
determine whether an application is compatible with the system, prior to installing
the application. API packages contain different built in classes that are imported.
The Android software development kit (SDK) includes a comprehensive set of
development tools. These include a debugger, libraries, a handset emulator based
on QEMU, documentation, sample code, and tutorials. Currently supported
development platforms include computers running Linux (any modem desktop
Linux distribution), Mac OS X 10.4.9 or later, Windows XP or later.
Enhancements to Android's SDK go hand in hand with the overall Android
platform development. The SDK also supports older versions of the Android
platform in case developers wish to target their applications at older devices.
Development tools are downloadable components, so after one has downloaded the
latest version and platform, older platforms and tools can also be downloaded for
compatibility testing.
Android applications are packaged in .apk format and stored under / data / app
folder on the Android OS (the folder is accessible only to root user for security
reasons). APK package contains .dex files (compiled byte code files called Dalvik
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.
4.5 Android Services
The main service that our project provides is using following
android.content.pm.PackageManager: Class for retrieving various kinds
of information related to the application packages that are currently installed
on the device
android.app.Activity: An activity is a single, focused thing that the user
can do
android.location.Geocoder: A class for handling geocoding and reverse
geocoding
android.location.LocationListener: Used for receiving notifications from
the LocationManager when the location has changed
android.location.Address: A class representing an Address, i.e., a set of
Strings describing a location
android.location.LocationManager: This class provides access to the
system location services
android.telephony.SmsManager: Manages SMS operations such as
sending data, text, and SMS messages
android.media.AudioManager: Manages SMS operations such as sending
data, text, and SMS messages
31
android.telephony.TelephonyManager: Provides access to information about
the telephony services on the device
32
CHAPTER FIVE
SUMMARY AND CONCLUSION
5.1 Summary
5.1.1 Getting the coordinates and address single time
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
phone to turn on.
Figure 5.1.1 SMS for getting location single time
5.1.2 Getting the coordinates and address continuously
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 is received as a result of above mentioned SMS.
Figure 5.1.3 Location
5.1.4 Profile Change from silent to General
The following SMS changes the profile of phone from silent to general and
acknowledges the number mentioned in the SMS.
34
Figure 5.1.4 Profile change from silent to general
5.1.5 Profile Change from general to silent
The following text changes the profile from general to silent.
Figure 5.1.5 Profile change from general to silent
5.1.6 Notification to check the current SIM
The following notification is sent after each time the application restarts so that the
number of current SIM present in the phone is checked.
35
Figure 5.1.6 Current SIM notification
5.1.7 Starting the Current Ringtone:
The following SMS starts the current ringtone on the stolen phone without
anything appearing on the screen and repeats it for 3-4 minutes.
Figure 5.1.7 Starting Ringtone
36
5.2 Conclusion
Android theft recovery application is a unique & efficient application, which is
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
system is enhanced. The highlighting features of our project:
Profile change
Ringing
Intimation of SIM replacement
GPS values Single value Continuous value
Automatic turn on of GPS
Transparent Messaging
37
Reference
Android Introduction http://en.wikipedia.org/wiki/Android_(operating_system)
Android Operating System:
http://en.wikipedia.org/wiki/Android_(operating_system)
Android Statistics
http://thenextweb.com/mobile/2013/05/09/canalys-over-300m-smart-
mobile-devices- shipped-in- q1-2013-59-5-android-19-3-ios-and-
18-1-windows/
Android Framework. http://developer.android.com/guide/faq/framework.html
Android Framework. http://developer.android.com/about/versions/android-2.2.html
Android version history. http://en.wikipedia.org/wiki/Android_version_history
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
API Packages http://developer.android.com/reference/packages.html
Eclipse http://en.wikipedia.org/wiki/Eclipse_(software)
Find My Iphone: http://en.wikipedia.org/wiki/Find_my_iPhone
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/
Remote Wipe Feature https://support.google.com/a/answer/173390?hl=en
Smart phone http://en.wikipedia.org/wiki/Smartphone
SDK http://en.wikipedia.org/wiki/Android_SDK#Android_SDK
39