Beruflich Dokumente
Kultur Dokumente
A Project Report
On
Android Car Music Player App
Submitted to
Amity University Uttar Pradesh
By
Dhananjay Yadav
1.0 INTRODUCTION
In This World More recently, as mobile devices such as smartphones and tablets have become
more powerful, energy efficient and numerous, their excess computing power became just as
attractive a resource to scientists. There are now about 900 million Android devices, and their
total computing power exceeds that of the largest conventional supercomputers.
As mobile devices become more like PCs they will come to replace objects we tend to carry
around such as checkbooks, credit cards, cameras, planners, mp3 players, etc. In short, we will
be using them to accomplish our daily tasks.
One application that falls into this category is Android Car Music Player for the Android
Phones. About 60% of the smart phone users are using Android based phones. The objective
behind developing this application was to facilitate the people to drive safe and enjoy the music
beats on the road.
The Project is developed in Java Programming language by using the Eclipse Galileo Integrated
Development Environment (IDE). We use the Android Software Development Kit (SDK)
which includes a variety of custom tools that help us to develop mobile applications on the
Android platform. The most important of these are the Android Emulator and the Android
Development Tools (ADT) plug-in for Eclipse.
1.5 SCOPE
Big friendly button, great for quickly getting some tunes going.
Lock orientation. Don't like your player constantly changing orientation in your hand?
Gapless playback.
1.6 SOFTWARE USED
1.6.1 ECLIPSE
In computer programming, Eclipse[1] is a multi-language Integrated development
environment (IDE) comprising a base workspace and an extensible plug system for
customizing the environment. It is written mostly in Java. It can be used to develop applications
in
Java
and,
by
means
of
various
plug-ins,
other
programming
languages including Ada, C, C++, COBOL, Fortran, Haskell, JavaScript, Perl, PHP, Python,
R, Ruby (including Ruby on Rails framework), Scala, Clojure, Groovy, Scheme, and Erlang.
It can also be used to develop packages for the software Mathematical Development
environments include the Eclipse Java development tools (JDT) for Java and Scala, Eclipse
CDT for C/C++ and Eclipse PDT for PHP, among others.
The initial codebase originated from IBM Visual Age. The Eclipse software development
kit (SDK), which includes the Java development tools, is meant for Java developers. Users can
extend its abilities by installing plug-ins written for the Eclipse Platform, such as development
toolkits for other programming languages, and can write and contribute their own plug-in
modules. Released under the terms of the Eclipse Public License, Eclipse SDK is free and open
source software (although it is incompatible with the GNU General Public License). It was one
of the first IDEs to run under GNU Classpath and it runs without problems under IcedTea.
The Eclipse Platform uses plug-ins to provide all functionality within and on top of the runtime
system, in contrast to some other applications, in which functionality is hard coded. The Eclipse
Platform's runtime system is based on Equinox, an implementation of the OSGi core
framework specification.
This plug-in mechanism is a lightweight software componentry framework. In addition to
allowing the Eclipse Platform to be extended using other programming languages such
as C and Python, the plug-in framework allows the Eclipse Platform to work with typesetting
languages like LaTeX, networking applications such as telnet and database management
systems. The plug-in architecture supports writing any desired extension to the environment,
such as for configuration management. Java and CVS support is provided in the Eclipse SDK,
with support for other version control systems provided by third-party plug-ins.
With the exception of a small run-time kernel, everything in Eclipse is a plug-in. This means
that every plug-in developed integrates with Eclipse in exactly the same way as other plug-ins;
in this respect, all features are "created equal". Eclipse provides plug-ins for a wide variety of
features, some of which are through third parties using both free and commercial models.
Examples of plug-ins include a UML plug-in for Sequence and other UML diagrams, a plugin for DB Explorer, and many others.
The Eclipse SDK includes the Eclipse Java development tools (JDT), offering an IDE with a
built-in incremental Java compiler and a full model of the Java source files. This allows for
advanced refactoring techniques and code analysis. The IDE also makes use of a workspace,
in this case a set of metadata over a flat file space allowing external file modifications as long
as the corresponding workspace "resource" is refreshed afterwards.
Eclipse implements widgets through a widget toolkit for Java called SWT, unlike most Java
applications, which use the Java standard Abstract Window Toolkit (AWT) or Swing. Eclipse's
user interface also uses an intermediate graphical user interface layer called JFace, which
simplifies the construction of applications based on SWT.
Language packs developing by the "Babel project" provide translations into over a
dozen natural languages.
In a security issue reported in March 2011, ADB was targeted as a vector to attempt to install
a rootkit on connected phones using a "resource exhaustion attack".[13]
1.7.3 FASTBOOT
Fastboot is a diagnostic protocol included with the SDK package used primarily to modify
the flash filesystem via a USB connection from host computer. It requires that the device be
started in aboot loader or Second Program Loader mode in which only the most basic hardware
initialization is performed. After enabling the protocol on the device itself, it will accept a
specific set of commands sent to it via USB using a command line. Some of most commonly
used fastboot commands include:
flash - Rewrites a partition with a binary image stored on the host computer.
reboot - Reboots the device into either the main operating system, the system recovery
partition or back into its bootloader.
devices - Displays a list of all devices (with the serial number) connected to the host
computer.
format - Format a specific partition. The file system of the partition must be recognized
by the device.
Unlike Java application development based on the Eclipse IDE, the NDK is based on
command-line tools and requires invoking them manually to build, deploy and debug the apps.
Several third-party tools allow integrating the NDK into Eclipse and Visual Studio.
1.7.5 ANDROID OPEN ACCESSORY DEVELOPMENT KIT
The Android 3.1 platform (also backported to Android 2.3.4) introduces Android Open
Accessory support, which allows external USB hardware (an Android USB accessory) to
interact with an Android-powered device in a special "accessory" mode. When an Androidpowered device is in accessory mode, the connected accessory acts as the USB host (powers
the bus and enumerates devices) and the Android-powered device acts as the USB device.
Android USB accessories are specifically designed to attach to Android-powered devices and
adhere to a simple protocol (Android accessory protocol) that allows them to detect Androidpowered devices that support accessory mode.[21]
1.7.6 HYPERNEXT ANDROID CREATOR
HyperNext Android Creator (HAC) is a software development system aimed at beginner
programmers that can help them create their own Android apps without knowing Java and the
Android SDK. It is based on HyperCard that treated software as a stack of cards with only one
card being visible at any one time and so is well suited to mobile phone applications that have
only one window visible at a time. HyperNext Android Creator's main programming language
is simply called HyperNext and is loosely based on Hypercard's HyperTalk language.
HyperNext is an interpreted English-like language and has many features that allow creation
of Android applications. It supports a growing subset of the Android SDK including its own
versions of the GUI control types and automatically runs its own background service so apps
can continue to run and process information while in the background.
1.7.7 SDL
The SDL library offers also a development possibility beside Java, allowing the development
with C and the simple porting of existing SDL and native C applications. By injection of a
small Javashim and JNI the usage of native SDL code is possible, allowing Android ports like
e.g. the Jagged Alliance 2 video game.
10
11
12
13
14
15
16
17
18
19
20
21
Ref No.
Test Data
Expected
Final Result
Outcome
1.
2.
3.
Application is
Application on the
installed on the
Android Operating
Android Device
Successfully
Application is
started
Splash Screen is
Application
Pass
Pass
Pass
starting of
Application
4.
Coming of Main
successfully working
Pass
Splash Screen
5.
Opening of Song
Pass
Song plays
Pass
Pass
Playlist after
pressing playlist
Button
6.
7.
Press Forward
Button
8.
Pass
9.
Song Pause
Pass
10.
Pass
22
11.
Inline Playlist is
working
Pass
Playlist open
song
in current music
Pass
playing
13.
Connecting the
Song is playing on
Pass
Connecting the
Song is playing on
Pass
audio system
Bluetooth and then
starts the
Application & Play
song
14.
application exits
screen
successfully
pass
23
The Android Car Music Player Application has been successfully created.
The user version of the software has been brought into focus. The first prototype model are
now functional and cater to different types of people
The application being uploaded on the app store and can be downloaded by the user. They now
able to give suggestions to increase the qualities of the application or provide suggestions for
increasing or decreasing the various function like e.g. adding sound button etc.
It is an android based application, it is easily accessible to any version from 2.3.3 4.1. This
justifies its ease of use.
Android Car Music player is designed to make listening to music in your car safer and easier
with simple designed screens and also with Bluetooth and Aux connectivity.
24
6.0 CONCLUSION
The project titled Android Car Music Player App is an android based application that enables
people to drive safe and enjoy the music beats on the road. The aim of the project was to make
listening to music in your car safer and easier with simple designed screens.
The project has been completed successfully with the maximum satisfaction. The constraints
are met and overcome successfully. The system is designed as like it was decided in the design
phase. The project gives good idea on developing a user-friendly application satisfying the
user.
The system is very flexible and versatile. This application has a user-friendly screen that
enables the user to use without any inconvenience. Validation checks induced have greatly
reduced errors. Provisions have been made to upgrade the software. The application has been
tested with live data and has provided a successful result. Hence the software has proved to
work efficiently.
The system created met its objectives, by being simple to use, easy to download from app store.
This software is developed with scalability in mind. Additional modules can be easily added
when necessary. The software is developed with modular approach. All modules in the system
have been tested with valid data and invalid data and everything work successfully.
However there is still a lot of scope for future improvement and add on in functionality. Some
of the major ones being developing for other mobile operating system like windows, etc.
25
26
REFERENCES
[1] Getting Started with Android referred from developer.android.com/.
[2] J. F. DiMarzio, Android - A Programmer's Guide 1st Edition, 2010, Tata McGraw Hill Education ISBN 9780071070591.
[3] Ed Burnette, Hello, Android: Introducing Google's Mobile Development Platform 3rd
Edition, 2011, Pragamatic publications.
[4] Reto Meier, Professional Android 4 Application Development, 2012, Wiley India.
[5] Boehm B, "A Spiral Model of Software Development and Enhancement", ACM
SIGSOFT Software Engineering Notes", "ACM", 11(4):14-24, August 1986.
[6] Referred the book written by Roger Pressman, titled Software Engineering - a
practitioner's approach.
[7] Gerhard Fischer, "The Software Technology of the 21st Century: From Software Reuse
to Collaborative Software Design"
[8] K.K.Aggarwal & Yogesh Singh, Software Engineering, 2013, New Age International
Publication.
27