Beruflich Dokumente
Kultur Dokumente
On
REFLECTIONAR-A Diary Mobile Application
A report submitted in the partial fulfillment of the requirements for the degree of
Bachelor of Technology
In
Computer Science & Engineering
SUBMITTED BY:
Adishree Pandita
University Roll no.:1244577
Batch:2012-2016
SUBMITTED TO:
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
GIANI ZAIL SINGH PUNJAB TECHNICAL UNIVERSITY CAMPUS
BATHINDA,PUNJAB-151001
CERTIFICATE
Date:________________
Supervisor-
:__________________
ACKNOWLEDGEMENT
The satisfaction and euphoria that accompanies the successful
completion of the task, would be incomplete without mention of the people who made it
possible, because after all success is an epitome of hard work, severance, undeterred
missionary zeal, stead fast determination and most of all the encouraging guidance. So
with immense gratitude, I acknowledge all those whose guidance and encouragement
served as a beacon light and crowned my efforts with success.
I express my sincere thanks to Mr. Sahil Sharma for guiding me through the project.
His relentless encouragement and invaluable advice helped me immensely in
accomplishing my objectives.
It is my pleasure to express my gratitude to all the faculty members of PTU GZS
Campus, Bathinda, who encouraged me to carry on with this work.
I express my sincere thanks to all our friends who have either directly or indirectly
helped me in my project.
ABSTRACT
This project entitled REFLECTIONAR is an android application developed in
Java using Eclipse IDE.
The central concept of the application is to allow the user to connect to his soul
by encouraging daily journal writing using this application. This is a diary application that
helps the user record his feelings and thoughts on certain events in his life. It acts as a
therapeutic both in good and bad days alike.
The main aim of this application is to provides the user an easy convenient
diary writing experience at the tips of his fingers. Also it provides the user with certain
additional features like application security to avoid any intrusion into his thoughts and a
Remind Me service that empowers the user to be reminded of when he has to write his
journal on a daily basis.
List Of Figures
Name Of Figure
Page No.
11
12
Fig.4:Services
14
Fig.5:DVM
17
Fig.6:Data Flow
20
Fig.9:Customizing fonts
23
24
25
Fig.12:App Security
26
List Of Contents
PAG
CHAPTE
R NO.
E
TITLE
NO.
ACKNOWLEDGEMEN
1.
i. T
ii. ABSTRACT
INTRODUCTION
1.1
Android Overview
7-8
1.2
Android Versions
1.3
Android Architecture
9-11
blocks
11-17
Diary Application2.
Overview
18
description
19
2.2
Project Dictionary
19-20
19-20
19-20
2.3
Output Screenshots
20-26
2.4
Scope of Project
27
3.
Conclusion
28
4.
References
29
Overview of Android
Activity
Intent
Shared Preference
Notification Manager
Services
1.1 ANDROID-OVERVIEW
Android is a mobile operating system (OS) currently developed by Google, based on
the Linux kernel and designed primarily for touch screen mobile devices such as smart
phones and tablets. Android's user interface is mainly based on direct manipulation, using
touch gestures that loosely correspond to real-world actions, such as swiping, tapping and
pinching, to manipulate on-screen objects, along with a virtual keyboard for text input.
Android, Inc. was founded in Palo Alto, California in October 2003 by Andy Rubin (cofounder of Danger), Rich Miner (co-founder of Wildfire Communications, Inc.), Nick Sears
(once VP at T-Mobile), and Chris White (headed design and interface development
at WebTV) to develop, in Rubin's words, "smarter mobile devices that are more aware of its
owner's location and preferences".
Initially developed by Android, Inc., which Google 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 commercially available smart phone running Android was the HTC Dream,
released on October 22, 2008
Android's source code is released by Google under open source licenses, although most
Android devices ultimately ship with a combination of open source and proprietary software,
including proprietary software required for accessing Google services. Android is popular
with technology companies that require a ready-made, low-cost and customizable operating
system for high-tech devices.
1.2
ANDROID VERSIONS
1.3 ANDROID-ARCHITECTURE
Android architecture or Android software stack is categorized into five parts:
1. Linux kernel : It is the heart of android architecture that exists at the root of android
architecture. Linux kernel is responsible for device drivers, power management,
memory management, device management and resource access.
2. Native libraries (middleware), : On the top of linux kernel, there are Native
libraries such as WebKit, OpenGL, FreeType, SQLite, Media, C runtime library
10
(libc) etc.The WebKit library is responsible for browser support, SQLite is for
database, FreeType for font support, Media for playing and recording audio and video
formats.
3. Android Runtime : In android runtime, there are core libraries and DVM (Dalvik
Virtual Machine) which is responsible to run android application. DVM is like JVM
but it is optimized for mobile devices. It consumes less memory and provides fast
performance.
4. Application Framework : On the top of Native libraries and android runtime, there is
android framework. Android framework includes Android API's such as UI (User
Interface), telephony, resources, locations, Content Providers (data) and package
managers. It provides a lot of classes and interfaces for android application
development.
5. Applications : On the top of android framework, there are applications. All
applications such as home, contact, settings, games, browsers are using android
framework that uses android runtime and libraries. Android runtime and native
libraries are using linux kernel.
11
Launch an activity
Broadcast a message
Intent is of two types-explicit and implicit intent. Android Explicit intent specifies the
component to be invoked from activity. In other words, we can call another activity in
android by explicit intent.
Service
Android service is a component that is used to perform operations on the background such
as playing music, handle network transactions, interacting content providers etc. It doesn't has
any UI (user interface).
The service runs in the background indefinitely even if application is destroyed.
Moreover, service can be bounded by a component to perform interactivity and inter process
communication (IPC).
The android.app.Service is subclass of ContextWrapper class.
There are two types of services local and remote. Local service is accessed from within the
application whereas remote service is accessed remotely from other applications running on
the same device.
There can be two forms of a service.The lifecycle of service can follow two different paths:
started or bound.
1. Started
14
2. Bound
1) Started Service
A service is started when component (like activity) calls startService() method, now it runs
in the background indefinitely. It is stopped by stopService() method. The service can stop
itself by calling the stopSelf() method.
2) Bound Service
A service is bound when another component (e.g. client) calls bindService() method. The
client can unbind the service by calling the unbindService() method.
The service cannot be stopped until all clients unbind the service.
Figure 4-Services
15
Content Provider
Content Providers are used to share data between the applications.
Fragment
Fragments are like parts of activity. An activity can display one or more fragments on the
screen at the same time.
AndroidManifest.xml
The AndroidManifest.xml file contains information of your package, including components
of the application such as activities, services, broadcast receivers, content providers etc. It is
like the web.xml file in Java EE
It performs some other tasks also:
It also declares the android API that the application is going to use.
This is the required xml file for all the android application and located inside the root
directory.
16
As we know the modern JVM is high performance and provides excellent memory
management. But it needs to be optimized for low-powered handheld devices as well.
The Dalvik Virtual Machine (DVM) is an android virtual machine optimized for mobile
devices. It optimizes the virtual machine for memory, battery life and performance. Dalvik is
a name of a town in Iceland. The Dalvik VM was written by Dan Bornstein. The Dex
compiler converts the class files into the .dex file that run on the Dalvik VM. Multiple class
files are converted into one dex file. Let's see the compiling and packaging process from the
source file:
17
Fig 5- DVM
The javac tool compiles the java source file into the class file.
The dx tool takes all the class files of your application and generates a single .dex file. It is a
platform-specific tool.
The Android Assets Packaging Tool (aapt) handles the packaging process.
18
2. DIARY APPLICATION-OVERVIEW
Socrates said, "Know thyself." Keeping a daily diary helps one know oneself and express
himself more clearly. It also enables one to record special events. People take photos so they
can remember days out, parties etc. A diary is like a completely personal, written photo,
recording the things only you saw in as much or as little detail as you like. You can record
your thoughts and feelings. You remember how things made you feel on certain days or in
certain places, so your memory is more detailed. It also acts as a kind of therapy after bad
days. Getting your feelings written down on paper feels much better than keeping them to
yourself. It can also help you think about things more clearly, and maybe even help decide
how you feel about things if you are unsure. In fact, its therapeutic even on good days! Make
a hot drink, snuggle into a comfy chair, and take half an hour just for you and your diary. It
feels great! One can also improve their writing skills. Sometimes, we dont appreciate what
we achieve writing down a challenge you overcame and how you did it makes you realise
this! On the other hand, you can understand things you could have done better, if you have to
write something down and consider it.
19
2.1
20
21
Splash Screen
22
Diary Entry
23
24
Customizing Fonts
25
Customizing Background
26
App Security
27
28
3. CONCLUSION
The central concept of this application is to provide the user with a convenient diary writing
experience. They can write diary in a much more convenient way as compared to the
conventional paper diary writing. The entries are stored and are maintained in an efficient
way away from prying eyes in a secure manner.
Data entry into the application can be done by selecting a particular date and writing the diary
entry corresponding to the date. Diary writing becomes a habit as one is reminded of updating
a daily entry by a reminder set. One can customize the diary entry by specifying different font
sizes, different font styles, different font colors etc. One can easily delete the previous diary
entries that one no longer wants. Updating or editing a previous entry is also easier than the
usual diary writing just a few clicks away.
The concept of an android based diary application has changed the way we record memoirs.
Like every coin has two faces, it is bound to have some demerits along with the merits. It can
lead to greater dependency on the gadgets for diary writing and on reminders for reminding
things instead of the human memory but as advancements in technology are going on, more
number of people would be going for diary writing the e-way.
29
REFERENCES
www.google.com(Google)
www.javatpoint.com (Javatpoint)
www.tutorialspoint.com (TutorialsPoint)
www.wikipedia.org (Wikipedia)
Vogella(www.vogella.com)
30
31