Fyp-Android OS Based Search Engine
Fyp-Android OS Based Search Engine
com
A
PROJECT REPORT
ON
ANDROID OPERATING SYSTEM
AT
MOBILE BASED SEARCH ENGINE
B TECH
SUBMITTED BY
N.B.G.THILAK
HT.NO:07D01A0568
RAJASEKHAR.B
HT.NO: 07D01AO590
CERTIFICATE
Guidance and in partial fulfillment of the Curriculum for the award of the
Degree of B-TECH (COMPUTER SCIENCE) by JNTU University.
EXTERNAL EXAMINER
2
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Chapter-1
1.1 Introduction
Android is an software platform and operating system for mobile devices. It is based on
the Linux kernel. It was developed by Google and later the Open Handset Alliance
(OHA). It allows writing managed code in the Java language. Due to Android here is
the possibility to write applications in other languages and compiling it to ARM native
code. Unveiling of the Android platform was announced on 5 November 2007 with the
founding of OHA.
It's a consortium of several companies
OPERATING SYSTEM:
An operating system (OS) is software consisting of programs and data that runs
on computers and manages computer hardware resources and provides common
services for efficient execution of various application software.
For hardware functions such as input and output and memory allocation, the
operating system acts as an intermediary between application programs and the
computer hardware, although the application code is usually executed directly by the
hardware and will frequently call the OS or be interrupted by it.
3
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Operating systems
Common Features:
Process management
Interrupts
Memory management
File system
Device drivers
Networking (TCP/IP, UDP)
Security (Process/Memory protection)
I/o
4
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
The operating systems of this type allow a multiple users to access a computer
system concurrently. Time-sharing system can be classified as multi-user systems as
they enable a multiple user access to a computer through the sharing of time. Single-
user operating systems, as opposed to a multi-user operating system, are usable by a
single user at a time. Being able to have multiple accounts on a Windows operating
system does not make it a multi-user system. Rather, only the network administrator is
the real user. But for a Unix-like operatingsystem, it is possible for two users to login at
a time and this capability of the OS makes it a multi-user operating system.
When a single program is allowed to run at a time, the system is grouped under
a single-tasking system, while in case the operating system allows the execution of
multiple tasks at one time, it is classified as a multi-tasking operating system. Multi-
tasking can be of two types namely, pre-emptive or co-operative. In pre-emptive
multitasking, the operating system slices the CPU time and dedicates one slot to each of
the programs. Unix-like operating systems such as Solaris and Linux support pre-
emptive multitasking. Cooperative multitasking is achieved by relying on each process
to give time to the other processes in a defined manner. MS Windows prior to Windows
95 used to support cooperative multitasking.
5
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Embedded System:
The operating systems designed for being used in embedded computer systems
are known as embedded operating systems. They are designed to operate on small
machines like PDAs with less autonomy. They are able to operate with a limited
number of resources. They are very compact and extremely efficient by design.
Windows CE and Minix 3 are some examples of embedded operating systems.
In a batch processing operating system interaction between the user and processor is
limited or there is no interaction at all during the execution of work. Data and programs
that need to be processed are bundled and collected as a batch and executed together.
6
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
History:
In the early 1950s, a computer could execute only one program at a time. Each
user had sole use of the computer and would arrive at a scheduled time with program
and data on punched paper cards and tape. The program would be loaded into the
machine, and the machine would be set to work until the program completed or crashed.
Programs could generally be debugged via a front panel using toggle switches and panel
lights. It is said thatAlan Turing was a master of this on the early Manchester Mark 1
machine, and he was already deriving the primitive conception of an operating system
from the principles of the Universal Turing machine.
Mainframes:
Through the 1950s, many major features were pioneered in the field of operating
systems, including batch processing, multitasking,spooling, runtime libraries, link-
loading, and programs for sorting records in files. These features were included or not
included in application software at the option of application programmers, rather than in
a separate operating system used by all applications. In 1959 the SHARE Operating
System was released as an integrated utility for the IBM 704, and later in
the 709 and 7090 mainframes.
During the 1960s, IBM's OS/360 introduced the concept of a single OS spanning
an entire product line, which was crucial for the success of the System/360
machines. IBM's current mainframe operating systems are distant descendants of this
original system and applications written for OS/360 can still be run on modern
machines. In the mid-'70s, MVS, a descendant of OS/360, offered the first
implementation of using RAM as a transparent cache for data.
In the late 1960s through the late 1970s, several hardware capabilities evolved
that allowed similar or ported software to run on more than one system. Early systems
had utilized microprogramming to implement features on their systems in order to
permit different underlying architecture to appear to be the same as others in a series. In
fact most 360's after the 360/40 (except the 360/165 and 360/168) were micro
programmed implementations. But soon other means of achieving application
compatibility were proven to be more significant.
7
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
The enormous investment in software for these systems made since 1960s
caused most of the original computer manufacturers to continue to develop compatible
operating systems along with the hardware. The notable supported mainframe operating
systems include:
Microcomputers:
PC-DOS was an early personal computer OS that featured a command line interface.
The first microcomputers did not have the capacity or need for the elaborate
operating systems that had been developed for mainframes and minis; minimalistic
operating systems were developed, often loaded from ROM and known as Monitors.
One notable early disk-based operating system was CP/M, which was supported on
many early microcomputers and was closely imitated in MS-DOS, which became
8
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
wildly popular as the operating system chosen for the IBM PC (IBM's version of it was
called IBM DOS or PC DOS), its successors making Microsoft.
Microsoft Windows
The newest version is Windows 7 for personal computers and Windows Server 2008
R2 for servers.
9
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Android:
Android uses Linux for its device drivers, memory management, process management,
and networking.
The next level up contains the Android native libraries. They are all written in C/C++
internally, but youll be calling them through Java interfaces. In this layer you can find
the Surface Manager, 2D and 3D graphics, Media codecs, the SQL database (SQLite),
and a native web browser engine (WebKit).
Dalvik Virtual Machine.Dalvik runs dex files, which are coverted at compile time from
standard class and jar files.
Advantages :
There are a host of advantages that Googles Android will derive from being an open
Source software:
Some of the advantages include:
The ability for anyone to customize the Google Android platform
The consumer will benefit from having a wide range of mobile applications to
choose from since the monopoly will be broken by Google Android
Men will be able to customize a mobile phones using Google Android platform
like never before
Features like weather details, opening screen, live RSS feeds and even the icons on the
opening screen will be able to be customized
As a result of many mobile phones carrying Google Android, companies will
come up with such innovative products like the location
In addition the entertainment functionalities will be taken a notch higher by
Google Android being able to offer online real time multiplayer games
10
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
1.1.2Introduction to Databases
Database
Architecture:
The external level defines how users understand the organization of the data. A
single database can have any number of views at the external level. The internal level
defines how the data is physically stored and processed by the computing system.
Internal architecture is concerned with cost, performance, scalability and other
operational matters. The conceptual is a level of indirection between internal and
external. It provides a common view of the database that is uncomplicated by details of
how the data is stored or managed, and that can unify the various external views into a
coherent whole.
11
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
server cluster or a mobile phone, the query language(s) that access the database, such
as SQL or XQuery, performance trade-offs, such as maximum scale or maximum speed
or others. Some DBMS cover more than one entry in these categories, e.g., supporting
multiple query languages. Examples of some commonly used DBMS are MySQL,
PostgreSQL, Microsoft Access, SQLServer, FileMaker, Oracle, Sybase, dBase, Clipper,
FoxPro etc. Almost every database software comes with an Open Database
Connectivity (ODBC) driver that allows the database to integrate with other databases.
Components of DBMS:
Most DBMS as of 2009 implement a relational model. Other DBMS systems,
such as Object DBMS, offer specific features for more specialized requirements. Their
components are similar, but not identical.
RDBMScomponents:
12
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
ODBMScomponents:
Object DBMS (ODBMS) has transaction and storage components that are
analogous to those in an RDBMS. Some DBMS handle DDL, DML and update tasks
differently. Instead of using sublanguages, they provide APIs for these purposes. They
typically include a sublanguage and accompanying engine for processing queries with
interpretive statements analogous to but not the same as SQL. Example object query
languages are OQL, LINQ, JDOQL, JPAQL and others. The query engine returns
collections of objects instead of relational rows.
Types:
Operational database:
These databases store detailed data about the operations of an organization.
They are typically organized by subject matter, process relatively high volumes of
updates using transactions. Essentially every major organization on earth uses such
databases. Examples include customer databases that record contact, credit, and
demographic information about a business' customers, personnel databases that hold
information such as salary, benefits, skills data about employees, Enterprise resource
planning that record details about product components, parts inventory, and financial
databases that keep track of the organization's money, accounting and financial
dealings.
13
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Data warehouse:
Data warehouses archive modern data from operational databases and often
from external sources such as market research firms. Often operational data undergoes
transformation on its way into the warehouse, getting summarized, anonymized,
reclassified, etc. The warehouse becomes the central source of data for use by managers
and other end-users who may not have access to operational data. For example, sales
data might be aggregated to weekly totals and converted from internal product codes to
use UPC codes so that it can be compared with ACNielsen data.Some basic and
essential components of data warehousing include retrieving and analyzing data,
transforming,loading and managing data so as to make it available for further use.
Analytical database:
Analysts may do their work directly against a data warehouse or create a
separate analytic database for Online Analytical Processing. For example, a company
might extract sales records for analyzing the effectiveness of advertising and other sales
promotions at an aggregate level.
Distributed database:
These are databases of local work-groups and departments at regional offices,
branch offices, manufacturing plants and other work sites. These databases can include
segments of both common operational and common user databases, as well as data
generated and used only at a users own site.
End-user database:
These databases consist of data developed by individual end-users. Examples of
these are collections of documents in spreadsheets, word processing and downloaded
files, even managing their personal baseball card collection.
14
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
External database:
These databases contain data collected for use across multiple organizations,
either freely or via subscription. The Internet Movie Database is one example.
Hypermedia databases:
The World Wide Web can be thought of as a database, albeit one spread across
millions of independent computing systems. Web browsers "process" this data one page
at a time, while web crawlers and other software provide the equivalent of database
indexes to support search and other activities.
Models:
Database Developer:
15
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
databases. MS SQL Server, MySQL and Oracle is our specialisation. Our Database
Specialists have worked in diverse fields like e-commerce applications, internet banking
portals, large community website with role based access, social networking applications
with multi-server deployment and software architecture designed to support high
loads.We design dynamic websites, e-commerce sites, and a wide variety of web
applications and Internet database solutions for a wide range of businesses. We take
pride in offering quick, effective and inexpensive ecommerce database solutions. Our
Technical Database Developer team has vast experience in Database Application
Development, setting up and using different databases, from small and fast MySQL,
used for small projects, to huge and efficient Oracle database servers with complex
structure. Our team with strong database management background and PL SQL
programming experience is able to work for your business projects & ongoing
maintenance / development requirements. We provide skilled resources working offsite,
with a variety of experience in Oracle Solutions.
16
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
time, object databases attempt to introduce key ideas of object programming, such
as encapsulation and polymorphism, into the world of databases.
A variety of these ways have been triedfor storing objects in a database. Some
products have approached the problem from the application-programming side, by
making the objects manipulated by the program persistent. This also typically requires
the addition of some kind of query language, since conventional programming
languages do not provide language-level functionality for finding objects based on their
information content. Othershave attacked the problem from the database end, by
defining an object-oriented data model for the database, and defining a
database programming language that allows full programming capabilities as well as
traditional query facilities.
Storage structures:
Databases may store relational tables/indexes in memory or on hard disk in one of many
forms:
17
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Object databases use a range of storage mechanisms. Some use virtual memory-
mapped files to make the native language (C++, Java etc.) objects persistent. This can
be highly efficient but it can make multi-language access more difficult. Others
disassemble objects into fixed- and varying-length components that are then clustered in
fixed sized blocks on disk and reassembled into the appropriate format on either the
client or server address space. Another popular technique involves storing the objects in
tuples (much like a relational database) which the database server then reassembles into
objects for the client.
Indexing:
Indexes affect performance, but not results. Database designers can add or
remove indexes without changing application logic, reducing maintenance costs as the
database grows and database usage evolves.
18
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER 2
Project will be done in PHP,Flex as front end and MySQL as back end.
19
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER-3
Technology is the usage and knowledge of tools, techniques, crafts, systems or methods
of organization in order to solve a problem or serve some purpose. The
word technology comes from the Greek technological tchn an "art", "skill" or
"craft" and -logia the study of something, or the branch of knowledge of a
discipline. The term can either be applied generally or to specific areas: examples
include construction technology, medical technology, and information technology.
3.1.1 JAVA:
Multithreaded Robust
Dynamic Secure
Java is a programming language originally developed by James Gosling at Sun
Microsystems (which is now a subsidiary of Oracle Corporation) and released in 1995
as a core component of Sun Microsystems' Java platform. The language derives much
of its syntax from C and C++ but has a simpler object model and fewer low-
level facilities. Java applications are typically compiled tobytecode (class file) that can
run on any Java Virtual Machine (JVM) regardless of computer architecture. Java is a
general-purpose, concurrent, class-based, object-oriented language that is specifically
designed to have as few implementation dependencies as possible. It is intended to let
20
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
application developers "write once, run anywhere". Java is currently one of the most
popular programming languages in use, and is widely used from application software to
web applications.
Automatic memory management:
Java uses an automatic garbage collector to manage memory in the object lifecycle. The
programmer determines when objects are created, and the Java runtime is responsible
for recovering the memory once objects are no longer in use. Once no references to an
object remain, the unreachable memory becomes eligible to be freed automatically by
the garbage collector. Something similar to a memory leak may still occur if a
programmer's code holds a reference to an object that is no longer needed, typically
when objects that are no longer needed are stored in containers that are still in use. If
methods for a nonexistent object are called, a "null pointer exception" is thrown.
Syntax:
The syntax of Java is largely derived from C++. Unlike C++, which combines the
syntax for structured, generic, and object-oriented programming, Java was built almost
exclusively as an object-oriented language. All code is written inside a class, and
everything is an object, with the exception of the primitive data types (integers,
floating-point numbers, boolean values, and characters), which are not classes for
performance reasons.
Java uses similar commenting methods to C++. There are three different styles of
comment: a single line style marked with two slashes (//), a multiple line style opened
with a slash asterisk (/*) and closed with an asterisk slash (*/), and
theJavadoc commenting style opened with a slash and two asterisks (/**) and closed
with an asterisk slash (*/). The Javadoc style of commenting allows the user to run the
Javadoc executable to compile documentation for the program.
Example:
publicclassHelloWorld
{
publicstaticvoid main(String[] args)
{
21
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
System.out.println("Hello, world!");
}
}
Editions:
Sun has defined and supports four editions of Java targeting different application
environments and segmented many of its APIs so that they belong to one of the
platforms. The platforms are:
3.1.2 XML:
Extensible Markup Language (XML) is a set of rules for encoding documents
in machine-readable form. It is defined in the XML 1.0 Specification produced
by the W3C, and several other related specifications, all gratis open standards.
Key terminology:
The material in this section is based on the XML Specification. This is not an
exhaustive list of all the constructs which appear in XML; it provides an
introduction to the key constructs most often encountered in day-to-day use.
22
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Character:
By definition, an XML document is a string of characters. Almost every
legal Unicode character may appear in an XML document.
Processor and Application:
The processor analyzes the markup and passes structured information to an application.
The specification places requirements on what an XML processor must do and not do,
but the application is outside its scope. The processor (as the specification calls it) is
often referred to colloquially as an XML parser.
Markup and Content:
The characters which make up an XML document are divided into markup and content.
Markup and content may be distinguished by the application of simple syntactic rules.
All strings which constitute markup either begin with the character "<" and end with a
">", or begin with the character "&" and end with a ";". Strings of characters which are
not markup are content.
Tag:
A markup construct that begins with "<" and ends with ">". Tags come in three
flavors: start-tags, for example <section>, end-tags, for example </section>,
and empty-element tags, for example <line-break />.
Element:
A logical component of a document which either begins with a start-tag and ends with a
matching end-tag, or consists only of an empty-element tag. The characters between the
start- and end-tags, if any, are theelement's content, and may contain markup, including
other elements, which are called child elements. An example for child elemen
is <Greeting>Hello, world.</Greeting> Another is <line-break />.
Attribute:
A markup construct consisting of a name/value pair that exists within a start-tag or
empty-tag element tag.In the example (belowthe element img has two
23
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
XML Declaration:
XML documents may begin by declaring some information about themselves, as in the
following example.
<? xmlversion="1.0"encoding="UTF-8"?>
3.1.3 HTML:
HTML, which stands for HyperText Markup Language, is the predominant markup
language for web pages. HTML is the basic building-blocks of webpages.
The purpose of a web browser is to read HTML documents and compose them into
visual or audible web pages. The browser does not display the HTML tags, but uses the
tags to interpret the content of the page.
24
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
HTML Tags:
Markup:
25
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
3.1.4 MySQL:
MySQL AB (A subsidiary
Developer(s)
of Oracle)
Written in C, C++
Operating
Cross-platform
system
Available in English
Type RDBMS
GNUGeneral Public
License
License
The MySQL development project has made its source code available under the
terms of the GNU General Public License, as well as under a variety of proprietary
agreements. MySQL was owned and sponsored by a single for-profit firm, the Swedish
company MySQL AB, now owned by Oracle Corporation.
26
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Uses:
MySQL is a popular choice of database for use in web applications, and is a central
component of the widely used LAMP web application software stackLAMP is an
acronym for "Linux, Apache, MySQL, Perl/PHP/Python".
MySQL is used in some of the most frequently visited web sites on the Internet,
including Flicker,Nokia.com, YouTube and as previously mentioned; Wikipedia,
Google and Face book.
MySQL is written in C and C++. Its SQL parser is written in yacc, and a home-
brewed lexical analyzer named sql_lex.cc.
27
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
method also ships with a MySQL adapter, allowing direct interaction between a
MySQL database and any web client via structured URLs. The MySQL server and
official libraries are mostly implemented in ANSI C/ANSI C++.
Features:
28
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
3.1.5 PHP:
Usage:
</body>
Originally designed to create dynamic web pages, PHP now focuses mainly on
server-side scripting, and it is similar to other server-side scripting languages that
provide dynamic content from a web server to a client, such as Microsoft's Asp.net, Sun
Microsystems' Java Server Pages, and mod_perl. PHP has also attracted the
development of many frameworks that provide building blocks and a design structure to
promote rapid application development (RAD).
29
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Syntax :
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>PHP Test</title>
</head>
<body>
<?php
echo 'Hello World';
?
30
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
3.1.6Adobe Flex
Adobe Flex is a software development kit (SDK) released by Adobe Systems for the
development and deployment of cross-platform rich Internet applications based on the
Adobe Flash platform. Flex applications can be written using Adobe Flash Builder or by
using the freely available Flex compiler from Adobe.
The release in March 2004 by Macromedia included an SDK, an integrated
development environment (IDE), and a Java EE integration application known as Flex
Data Services. Since Adobe purchased Macromedia in 2005, subsequent releases of
Flex no longer require a license for Flex Data Services, which has become a separate
product rebranded as Lifecycle Data Services.
Adobe Flash Builder offers built-in code editors for MXML and Action Script
and a WYSIWYG editor for modifying MXML applications. Adobe Flash Builder
includes an interactive debugger allowing developers to step through code execution
while inspecting variables and watching expressions. Flex Builder 3 added support for
performanceanalysis. The profiling view displays statistical information about memory
use in addition to function call execution time.
31
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
32
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Chapter-4
Software Requirement Analysis
4.1 DEFINITION:
System Analysis is the detailed study of the various operations performed by the system
and their relationships within and outside the system. Analysis is the process of
breaking something into its parts so that the whole may be understood. System analysis
is concerned with becoming aware of the problem, identifying the relevant and most
decisional variables, analysing and synthesizing the various factors and determining an
optimal or at least a satisfactory solution. During this a problem is identified, alternate
system solutions are studied and recommendations are made about committing the
resources used to design the system.
4.1.1 CurrentSystem:
Traditional studies on the reliability of software focus on functional failures, and do
not emphasize the time-related behaviour of systems that can also cause the software to
fail. The ability to meet deadlines and time constraints is critical to embedded systems
software (as in automotive or robotic applications) that mandate response to stimuli
within respecified real-time design specifications, and reliability considerations require
a detailed evaluation of the ability of the system to meet these specifications.
If there is one area of certain growth in these troubled economic times, it is the mobile
communications sector. And with significant improvements having emerged over the
last few years in vital areas such as data transfer speed, screens and content, mobile
devices are starting to challenge the PC as an Internet access device of choice. This in
turn has raised a key issue in the Mobile Internet space: that of the optimization of sites
for mobile devices and search engines.
It's all very well delivering a repackaged version of a standard web site to mobile
devices, and most of the presentational challenges this raises have been addressed one
way or another. But the fact remains that mobile Internet usage diverges from
traditional usage in a number of important ways. The failure of content publishers to
33
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
understand the implications of these differences for content can only lead to sub-
standard mobile sites that run the risk of providing irrelevant material and poor
usability. This in turn results in an impoverished mobile Internet experience for users,
which impacts take-up and slows down the whole cycle.
It is clearly very much in the interests of content publishers to optimize their sites not
just for the mobile user, but also the mobile search engine. This is particularly important
when the site contains information of particular relevance to the mobile sector.
The first thing developers need to bear in mind is that there are real differences in the
way mobile users tend to search compared with standard desktop-based searching. For
example, there are differences in the type of content that mobile users tend to seek out.
This content is far more likely to involve an area that fulfills some immediate
requirement, such as music or a ringtone, a navigational query, or an entertainment-
related question.
In fact, research has suggested that around 50% of search queries from mobile phones
tend to fall into just seven key categories: the above three, plus sports, local knowledge,
shopping, and reference. Clearly any publisher who deals in one or more of these kinds
of data - probably most of them - needs to consider the likelihood that a significant
proportion of the site's potential audience could be mobile-based and optimize
accordingly.
Another limiting factor that developers should consider is the impact of the form factor
of a typical mobile device on how it is used. This can express itself in any number of
ways; for example, it is common knowledge that few users navigate beyond the first
couple of pages of search results for any given query. If they haven't found what they
are looking for by the end of page two they will tend to rephrase the query and start
over.
In a standard desktop search environment, which typically returns ten or so results per
page, this means that while a front page search ranking is preferable, a top twenty
34
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
ranking is generally regarded as satisfactory. On a mobile device with its tiny screen,
two pages might only include eight search results. This puts an additional premium on
search engine ranking for which webmasters need to account.
A third point to consider is that mobile search queries tend to be extremely short,
containing fewer keywords on average than their desktop-based counterparts. Data
provided by Massachusetts-based mobile search solution provider JumpTap suggests
that the average desktop search contains something between two and three keywords,
whereas less than 15% of all searches carried out from mobile devices contain more
than two keywords. The onus is on publishers to take account of this by ensuring their
content is highly focused, relevant, and preferably identifiable by a single keyword.
Technical Feasibility
Economic Feasibility
Behavioural Feasibility
35
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
is technically well and high in performance. It has got many features like buttons,
layouts, designs etc.,
Economic feasibility:
Economic analysis is the most frequently used method for evaluating the effectiveness
of a new system. More commonly known as cost/benefit analysis, the procedure is to
determine the benefits and savings that are expected from a candidate system and
compare them with costs. If benefits outweigh costs, then the decision is made to design
and implement the system. Considering our project the android is one of the best
operating system in mobile phones used to develop the applications which runs on the
mobile platform, which serves people a good scope of development in the software field
and also it attracts the users. Android mobiles weigh low cost then i-Phones and other
mobile operating system. Low cost easy access to the internet with search engine Apps
and fast fetching results now within your mobile.
Operational feasibility
Operational feasibility is a measure of how well a proposed system solves the problems,
and takes advantage of the opportunities identified during scope definition and how it
satisfies the requirements identified in the requirements analysis phase of system
development. Proposed system here is being developed in the Adobe Flash Builder
Burrito which is the latest version of Adobe which supports android applications.
Adobe Flash Builder (previously known as Adobe Flex Builder) is an integrated
development environment (IDE) built on the Eclipse platform and speeds development
of rich Internet applications (RIAs) and platform desktop, particularly for the Adobe Flash
platform. Adobe Flash Builder offers built-in code editors for MXML and Action Script
and a WYSIWYG editor for modifying MXML applications. Adobe Flash Builder
includes an interactive debugger allowing developers to step through code execution
while inspecting variables and watching expressions. Flex Builder 3 added support for
performance analysis.
36
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
4.1.4 MODULES
USER MODULE
This module will maintain all the users using this application. Generally there are two
types of user.
Users
Administrator
SEARCH MODULE
DATABASE MODULES
This module maintains the list of files uploaded by the user. Administrator can remove
any file that on complain from any user.
37
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Crawler Architecture:
A Web crawler is a computer program that browses the World Wide Web in a
methodical, automated manner or in an orderly fashion. Other terms for Web crawlers
are ants, automatic indexers, bots, Web spiders, Web robots, orespecially in the
FOAF communityWeb scutters.
This process is called Web crawling or spidering. Many sites, in particular
search engines, use spidering as a means of providing up-to-date data. Web crawlers are
mainly usedto create a copy of all the visited pages for later processing by a search
engine that will index the downloaded pages to provide fast searches. Crawlers can also
be used for automating maintenance tasks on a Web site, such as checking links or
validating HTML code.
Focused crawling:
The importance of a page for a crawler can also be expressed as a function of the
similarity of a page to a given query. Web crawlers that attempt to download pages that
are similar to each other are called focused crawler or topical crawlers. The concepts of
topical and focused crawling were first introduced by Menczer and by Chakrabarti.
The main problem in focused crawling is that in the context of a Web crawler,
we would like to be able to predict the similarity of the text of a given page to the query
before actually downloading the page. A possible predictor is the anchor text of links;
38
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
this was the approach taken by Pinkerton in a crawler developed in the early days of the
Web.
Propose to use the complete content of the pages already visited to infer the
similarity between the driving query and the pages that have not been visited yet. The
performance of a focused crawling depends mostly on the richness of links in the
specific topic being searched, and a focused crawling usually relies on a general Web
search engine for providing starting points.
URL normalization
Crawlers usually perform some type of URL normalization in order to avoid crawling
the same resource more than once. The term URL normalization, also called URL
canonicalization, refers to the process of modifying and standardizing a URL in a
consistent manner. There are several types of normalization that may be performed
including conversion of URLs to lowercase, removal of "." and ".." segments, and
adding trailing slashes to the non-empty path component.
Parallelization policy
A parallel crawler is a crawler that runs multiple processes in parallel. The goal
is to maximize the download rate while minimizing the overhead from parallelization
and to avoid repeated downloads of the same page. To avoid downloading the same
page more than once, the crawling system requires a policy for assigning the new URLs
discovered during the crawling process, as the same URL can be found by two different
crawling processes.
39
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
In general, the earlier (or higher on the page), and more frequently a site
appears in the search results list, the more visitors it will receive from the search
engine's users. SEO may target
different kinds of search, including image search, local search, video search,
news search and industry-specific vertical search engines. This gives a website
web presence.
The initialism "SEO" can refer to "search engine optimizers," a term adopted by
an industry of consultants who carry out optimization projects on behalf of
clients, and by employees who perform SEO services in-house. Search engine
optimizers may offer SEO as a stand-alone service or as a part of a broader
marketing campaign. Because effective SEO may require changes to the HTML
source code of a site and site content, SEO tactics may be incorporated into
website development and design.
40
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 4.4
As this happens mobile content shows a media shift toward mobile multimedia.
Simply put, mobile search is not just a spatial shift of PC web search to mobile
equipment, but is witnessing more of treelike branching into specialized
segments of mobile broadband and mobile content, both of which show a fast-
paced evolution.
41
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Dynamic Mobile Selection Interface Services - A new category of mobile search tool
that is emerging is one in which a pre-selected set of possible search content is
downloaded in advance by a mobile user and then allows for a final internet search step.
FIG 4.4.1
Google Mobile:
It starts out a bit confusing: When you first come to Google Mobile, you find no search
box. Instead, Google pushes apps and a huge number of services. Click Web for web
search.
The search results are based on the principle of universal search: You get
images, news, maps and more, depending on your query.
Taptu:
Taptu is not as advanced as Google, but in most cases, it will provide just what you
need. This is a service that is tailored specifically for touch screens and it does a great
job at simplifying web search on touch phones.
42
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Yahoo! Mobile:
Yahoo! Mobile offers much of the tools Google Mobile does (there is no speech search,
though). In addition, there is a list of hot topics on the front page and easy access to turn
on and off safe search.
Bing Mobile:
Bing Mobile has a smart design which makes searching easy: There are quick links to
directions, maps, weather and movies on the front page. The search results are not
universal (like Google and Taptu), but tabs provide easy access to results in the
categories videos, images and news.
Ask Mobile:
I am generally a big fan of Ask, but Ask Mobile is not too impressive. The front page
has convenient quick links to web, images, news, local and maps & directions. The
search results are easy to navigate.
43
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER-5
FIG 5.1
Here is the backend schema, which contains the tables which we are using in the
database. The data will be added in the data and will be arranged in the tables. Here we
are using PHPMYADMIN to create our database. This usually gives access from
Xamppwhich acts as a server in the local host. Our database name here is
mobilesearchengine.
44
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 5.1.1
Here the admin has HAS A relation with the users, organization, jobs. These tables
contain their respective fields.
45
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Use case diagrams are central to modeling the behavior of a system, a sub-system, or a
class. Each one shows a set of use cases, actors and their relationships. In the below
diagram we there are two actors (user and administrator) and 8 use case. The
relationship between actor and the case is association. Here the user is associated with 7
cases and the administrator is associated with 5 cases.
46
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
47
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
A class diagram shows a set of classes, interfaces, collaborations and their relationships.
In this application there are 5 main classes (application, user, administrator and
services). All the classes specify their attributes and operations and their relationship
with other classes. Application class has association relationship with user and
administrator, this mean user and administrator are related to application class because
they use it. Services class is part of application class so they relationship is aggregation
(has-a).
48
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
5.2.3OBJECT DIAGRAM
An Object diagram focuses on some particular set of object instances and attributes,
and the links between the instances. Here there are four objects application, services,
user and administrator. Services are a part of application so users who are connected to
application are finally using the services. Therefore user and administrator are
connected to the services object.
49
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
A sequence diagram emphasizes the time ordering of the messages. In the below
diagram it is shown that any new user has to register/ login with the website, then only
they can use services (like SMS, upload, download) of the website. They have to
register for alerts at the website and then the administrator can send alerts to them
regularly. They can contact the admin and can expect a reply to their message. On the
other had the admin can view users delete them, monitor the files being uploaded,
basically the admin has full access to the website. After using the services provided by
the website, the user can logout.
50
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
5.2.5COLLABORATION DIAGRAM
51
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
52
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Username Varchar 50
Password Varchar 10
User_id Varchar 50
Name Varchar 50
Email_id Varchar 50
password Varchar 50
Gender Varchar 50
Qualification Varchar 50
Experience Varchar 50
Salary Varchar 50
Current_organization Varchar 50
Current_location Varchar 50
Image Varchar 50
53
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Job_id Varchar 50
Job_title Varchar 50
Job_description Varchar 50
Company_id Varchar 50
Location Varchar 50
salary Varchar 50
experience varchar 50
Shift varchar 50
gender varchar 50
54
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER 6
Searching a Job
<form action="orgsearch.php" method="post" accept-charset="utf-8">
<fieldset>
<legend align="center"><span><h3>Admin Login</h3></span></legend>
<br><br><br>
<table border="0" width="100%" cellpadding="0" cellspacing="0">
<tr>
<td width="45%" align="right">Search</td>
<td width="2%" align="center">:</td>
<td width="53%"><input value="" type="text" name="keyword"></td>
</tr>
<tr>
<td colspan="3" align="center"><br>
<input value="Go" type="submit">
</td>
</tr>
</table>
<br><br><br>
</fieldset>
</form>
55
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Adding Jobs
<form action="componentdb.php" method="post" name="f7"
enctype="multipart/form-data">
<fieldset>
<strong><center>
<u>COMPONENT DETAILS</u></center></strong><br />
<center>
<strong>Component Type:</strong>
<select name="ct1">
<option value="0">Image</option>
<option value="1">video</option>
</select><br /><br />
<strong>Component Name:</strong>
<select name="cn1">
<option value="0">2Dimage</option>
<option value="1">3Dimage</option>
</select><br /><br />
<strong>Upload File:</strong><input type="file" name="f1" /><br /><br />
<strong>Component properties:</strong>
Imageformat:<select name="cpp1">
<option value="0"></option>
<option value="1">JPEG</option>
<option value="2">gif</option>
<option value="2">png</option>
<option value="4">pjpeg</option>
</select><br /><br />
Dimensions:<select name="cpp2">
<option value="0"></option>
<option value="1">640*480</option>
<option value="2">1024*768</option>
<option value="3">1275*1024</option>
56
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
<option value="4">1600*900</option>
</select><br /><br />
video format:<select name="cpp3">
<option value="0"></option>
<option value="1">.avi</option>
<option value="2">.mp4</option>
<option value="3">.mkv</option>
<option value="4">.wmv</option>
</select><br /><br />
<strong>component description:</strong>
<textarea rows="2" cols="20" name="cd1">
this is image/video
</textarea><br /><br />
<br /><br />
<input type="submit" value="Submit" /></center>
</fieldset>
</form>
Inserting values into the database
<?php
include '../lib/db.php';
$_FILES['f1']['type'];
if ((($_FILES["f1"]["type"] == "image/gif")
|| ($_FILES["f1"]["type"] == "image/jpeg")
|| ($_FILES["f1"]["type"] == "image/pjpeg")))
{
move_uploaded_file($_FILES['f1']['tmp_name'],'../uploads/components/'.$_FIL
ES['f1']['name']);
$name=$_POST['cn1'];
$type=$_POST['ct1'];
$image=$_FILES['f1']['name'];
$imageformat=$_POST['cpp1'];
57
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
$dimensions=$_POST['cpp2'];
$videoformat=$_POST['cpp3'];
$description=$_POST['cd1'];
$e="insert into component
values('','$type','$name','$image','$imageformat','$dimensions','$videoformat','$d
escription')";
mysql_query($e);
header('location:component.php');
}
else
{
echo "Invalid file extension";}?>
View Jobs
<table cellspacing=0 cellpadding=0>
<trcolspan=2>
<td><input type="checkbox" name="r2" /></td>
<td width="200"><strong>Componenttype</strong></td>
<td width="200"><strong>Componentname</strong></td>
<td width="200"><strong>Image</strong></td>
<td width="200"><strong>Properties</strong></td>
<td width="200"><strong>Description</strong></td>
</tr>
<?php
include '../lib/db.php';
$sql="select * from component;";
$x=mysql_query($sql);
while($row=mysql_fetch_array($x))
{
?>
<trcolspan=2>
<td width="200"><input type="checkbox" name="r1" /></td>
<td width="200"><?php echo $row['type']?></td>
58
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Editing Job
<?php include '../lib/db.php';
$quer="select * from component where id=".$_REQUEST['id'];
$r=mysql_query($quer);
$result=mysql_fetch_array($r);
?>
<html>
<body>
<form action="updatecomponent.php" method="post" name="f8"
enctype="multipart/form-data">
<feildset>
<center>
Component type<input type="text" name="ct1" value="<?php echo
$result['type'];?>" /><br /> Component name<input type="text" name="cn1"
value="<?php echo $result['name'];?>" /><br />
Changefile<input type="file" name="f1" /><a href="../uploads/components/<?php echo
$result['image'];?>"></a><br />
59
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
60
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
LOGIN:
The admin is the lone user of the back-end login. Once the admin logs in with
the username and password, then the authentication is invoked. If the
authentication is successful then the admin is allowed to proceed to the next
pages.
Admin Login:
DataBase
Admin Connect to
home page
Code:
<?php
session_start(); //For every login a new session will be generated and the session
terminates once the user logs out.
61
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
if(is_array($y))
{
session_register('id');//If the array is built we register the session with a new id
62
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
ADD:
Once the admin logs in he can add the user details(name, user name, password, school
and class), school details(school name), curriculum details(curriculum name, image and
the school name), class details(class, image, curriculum name), subject details(name,
image, grade), chapter details(chapter name, image, subject id), content details(title,
description, chapter) to the database.
<?php
include("../lib/db.php"); //includes the db file which connects to the database
function add()
{
$sql="insert into users(name, user_name, password, school_id, class_id)
values('".$_POST['name']."','".$_POST['uname']."','".$_POST['pwd']."','".$_POST['se'].
"','".$_POST['class']."')"; //inserts the values into the database table
63
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
EDIT:
If any modifications are to be done to the existing data present in the database then
the admin can edit the existing data and update in the database.
<?php
function edit()
{
$query="Update curriculum SET
curr_name='".$_POST['cuname']."',school_id='".$_POST['se']."',image='".$_FILES['im
g']
['name']."' wherecurr_id=".$_REQUEST['id'];//Updates the the fields in the database
withnew values
mysql_query($query);//executes the query
}
?>
64
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
DELETE
Admin can delete the data from the table in the database based on the
condition given.
function delete()
?>
65
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Source:
Mobilesearch:
66
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
</uname>
<password>
{password.text}
</password>
</s:request>
</s:HTTPService>
</fx:Declarations>
<fx:Script>
<![CDATA[
importmx.rpc.events.FaultEvent;
importmx.rpc.events.ResultEvent;
protectedfunction
button1_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
username.text="";
password.text="";
}
protectedfunction
button2_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
trace("sending..");
http.send();
}
67
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
this.removeAllElements()
this.addElement(suc);
}
else{
Error.text = "Incorrect credentials.."
}
}
protectedfunctionhttp_faultHandler(event:FaultEvent):void
{
// TODO Auto-generated method stub
trace("failed"+event.fault);
Error.text = "Connection failed"
}
protectedfunctiontxt_username_focusInHandler(event:FocusEvent):void
{
// TODO Auto-generated method stub
if(Error.text != ""){
Error.text = "";
}
]]>
</fx:Script>
68
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
focusIn="txt_username_focusInHandler(event)"
/>
</s:HGroup>
<s:HGroup width="100%" horizontalAlign="center">
<s:Label text="password"/>
<s:TextInput id="password" displayAsPassword="true"
color="#000000"
focusIn="txt_username_focusInHandler(event)"
/>
</s:HGroup>
<s:Label id="Error" color="#F70B0B"/>
<s:HGroup width="100%" horizontalAlign="center">
<s:Image source="@Embed(source='images/2.png')"
click="button2_clickHandler(event)"
buttonMode="true"
mouseChildren="false"
/>
<s:Image source="@Embed(source='images/7.png')"
click="button1_clickHandler(event)"
buttonMode="true"
mouseChildren="false"
/>
69
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
</s:HGroup>
</s:VGroup>
</s:View>
Search.mxml:
<?xml version="1.0" encoding="utf-8"?>
<s:Viewxmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
width="100%" height="100%"
contentBackgroundColor="#ffffff"
>
<fx:Script>
<![CDATA[
importmx.collections.ArrayCollection;
importmx.rpc.events.FaultEvent;
importmx.rpc.events.ResultEvent;
[Bindable]
publicvarxmls:ArrayCollection;
protectedfunctionbtnSrch_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
if(txtSrch.text != ""){
http.url =
"http://localhost/mobisearch/search.php";
70
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
http.send();
}
}
protectedfunctionhttp_resultHandler(event:ResultEvent):void
{
// TODO Auto-generated method stub
httpXmlService.url = event.result.toString();
httpXmlService.send();
trace(event.result);
protectedfunctionhttp_faultHandler(event:FaultEvent):void
{
// TODO Auto-generated method stub
error.text = "error connecting to server ";
protectedfunctionhttpXmlService_resultHandler(event:ResultEvent):void
{
// TODO Auto-generated method stub
xmls =
event.result.companies.companyasArrayCollection;
71
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
protectedfunctionhttpXmlService_faultHandler(event:FaultEvent):void
{
// TODO Auto-generated method stub
trace("error");
}
protectedfunctionlblLogout_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
NativeApplication.nativeApplication.exit();
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
<s:HTTPService id="http"
result="http_resultHandler(event)"
fault="http_faultHandler(event)">
<s:requestxmlns="">
<keyword>
{txtSrch.text}
</keyword>
</s:request>
72
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
</s:HTTPService>
<s:HTTPService id="httpXmlService"
result="httpXmlService_resultHandler(event)"
fault="httpXmlService_faultHandler(event)">
</s:HTTPService>
</fx:Declarations>
id="txtSrch"/>
<s:Image width="71" height="67"
click="btnSrch_clickHandler(event)"
source="@Embed(source='images/search_2.png')"/>
</s:HGroup>
<s:ListdataProvider="{xmls}" color="#000000"
itemRenderer="renderers.tile"
width="100%"
height="100%"/>
73
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
</s:VGroup>
</s:View>
Login
<?php
$host = "localhost";
$user = "root";
$pwd = "";
$db = "mobilesearch";
mysql_connect($host,$user,$pwd) or die (" connection error");
mysql_select_db($db) or die("db could not slectd");
74
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
$f=mysql_query($query1);
while($f_array=mysql_fetch_array($f))
{
$data.='<userdetails><name>'.$f_array['user_name'].'</name><sessid>'.$f_array
['friend_id'].'</sessid></userdetails>';
}
$data.='</buddies></list>';
fwrite($xml_file,$data);*/
echo "success";
}
else
{
print "failed"; } ?>
Search.mxml:
<?php
mysql_connect('localhost','root','');
mysql_select_db('mobilesearch');
$sql="select *from jobs where job_title LIKE '%".$_REQUEST['keyword']."%'";
$x=mysql_query($sql);
$xml='<?xml version="1.0" encoding="utf-8"?>';
$xml.='<companies>';
while($row=mysql_fetch_array($x))
{
$xml.='<company>';
$xml.='<id>'.$row['job_id'].'</id>';
$xml.='<name>'.$row['job_title'].'</name>';
$xml.='</company>';
}
$xml.='<company>';
$xml.='<id></id>';
75
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
$xml.='<name></name>';
$xml.='</company>';
$xml.='</companies>';
$files=fopen('search.xml','w');
fwrite($files,$xml);
echo 'http://localhost/mobisearch/search.xml';
?>
76
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER 7
TESTING
Testing is a process to show the correctness of the program. Testing is needed to show
completeness, t improve the quality of the software and to provide the maintenance aid.
Some testing standards are therefore necessary reduce the testing costs and operation
time. Testing software extends throughout the coding phase and it represents the
ultimate review of configurations, design and coding. Based on the way the software
reacts to these testing, we can decide whether the configuration that has been built is
study or not. All components of an application are tested, as the failure to do so many
results in a series of bugs after the software is put to use.
77
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Testing involves
Unit testing
Integration testing
Acceptance testing
The first level of test is unit testing. The purpose of unit testing is to ensure that each
program is fully tested.
The second step is integration testing. In this individual program units or programs are
integrated and tested as a complete system to ensure that the software requirements are
met.
Acceptance Testing involves planning and the execution of various types of tests in
order to demonstrate that the implemented software system satisfies the requirements.
Finally our project meets the requirements after going through all the levels of testing.
78
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Table 7.4.2
79
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER-8
LOGIN PAGE
FIG 8.1.1
Here the admin enters the username and password. This directly connects to the
database in the users tables look up in the table if the entered username and password is
correct then the page is linked to another page
80
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.2
After login the page which is displayed is View user where the information of the users
can be viewed i.e the users who logged into the database.
81
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.3
This page used to add the users in the database and align the values in their
particular table fields. To view the users who all logged in see view user.
82
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.4
This page is used to add jobs in the database. The jobs contains the fields
where a user specify his/her requirements.
83
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.5
Admin can view can jobs to which the user had applied all the time. These
records are maintained in the database.
84
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.6
User can edit the jobs giving the details in the particular fields.
85
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.7
The admin can view and delete the job details to which a user had applied.
86
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.1.8
When we log out the page return back to the login page.
87
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.2.1
When we debug the application code the code starts executing. Here is the display of
the application in the mobile.
88
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.2.2
Entering the username and password in the mobile app, this will connect to the database
of the sql from where it retrieves the data from it and executes the operation.
89
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.2.3
After successful sigin the page is displayed like this. This page contains a search image
and text input where the user enters the keywords in the text box.
90
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
FIG 8.2.4
Enter the keyword with you want to search the Jobs, The jobs which are starting with
letter h are displayed first following others.
91
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER 9
9.1 Conclusion
By this project, a unique search engine was presented for effective searching Of
information through mobile interface. The engine adopts three methods for retrieval:
two autonomousand one combinational. The ontology-based method makes use of the
semantic mark-up metadata accompanying each collection where an illustrative user
interface is used for graphical query formulation. The content-based method makes use
of the low-level visual characteristics of the multimedia material while the hybrid
method, which is the main contribution of this work, makes a combined use of the
previous two methods for offering a more complete result set to the user.
Easy access and portability of the system also helps to increase the performance of the
system in a better manner.
Future work includes the extension of the hybrid search engine and the integration of
additional cultural content. Finally we are investigating the addition of a semantic
recommendation engine to be able to make additional query suggestions to the user in
an automatic manner
92
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
CHAPTER 10
93
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
Bibilography
HTML: Website:www.w3schools.com
Adobe Flash
builder Burrito Website: www.google.com , Wikipedia , Learn Builder ,
94
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
REFERENCES
[1] James E. White. Mobile agents. In J. Bradshaw, editor,
Software Agents, chapter 18, pages 437472. AAAI/MIT
Press, Menlo Park, CA, 1997.
[3] Walter Binder and Volker Roth. Secure mobile agent systems
using Java where are we heading? In Proc. 17th ACM
Symposium on Applied Computing, Special Track on Agents,
Interactions, Mobility, and Systems (SAC/AIMS), Madrid,
Spain, March 2002. ACM.
95
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
96
www.final-yearproject.com | www.finalyearthesis.com
ANDROID OS MOBILE BASED SEARCH ENGINE
97
www.final-yearproject.com | www.finalyearthesis.com