Professional Documents
Culture Documents
A.S. Patil College of Commerce Vijayapura: Bachelor of Computer Applications (Bca)
A.S. Patil College of Commerce Vijayapura: Bachelor of Computer Applications (Bca)
B.L.D.E. Association’s
A.S. Patil College of Commerce Vijayapura
(Affiliated to Rani Chennamma University, Belgaum)
(Autonomous)
Submitted By
Mallikarjun Atanoor (BCA18048)
ACKNOWLEDGEMENT
The presented project is a result of our dedication and also support of other
members. We would not like to miss the chance of expressing our gratitude for all people
who made this work a fully fledged project. We are thankful to our guide “Prof.
Mallikarjun G.M” for his continues guidance and monitoring. We always be thankful to
precious time he has given beside of his busy schedule.
We are thankful to our HOD Prof. Praful V.H for giving such a wonderful
opportunity and also for encouragement. We show sincere gratitude to our respected
Principal Prof. S.G Rodagi Our process of showing gratitude is incomplete without thanking
all those members who have helped behind the mirror, without whom our project would not
be complete.
Thanking You,
Mallikarjun Atanoor.
BCA18048
ABSTRACT
This is an advanced contact management application where the user can save the
contact details of an individual, he wishes. This is an android based application using java
where the user can save the contact details such as Phone number, Name, E mail address,
Residential Address. Which is better than the traditional book keeping system where
everything is written in book.
CONTENTS
Introduction
Literature Survey
• Existing System
• Disadvantages of Existing System
• Proposed System
• Advantages of proposed System
System Requirements
• Hardware requirements
• Software requirements
Diagrams
Technologies used in projects
• Introduction to Android
• Introduction to SQLite
Screen Shots
Future Enhancements
Conclusion
Bibliography
INTRODUCTION
LITERATURE SURVEY
Existing system:
The present conventional system store data in books and paper.
Data can not be maintained for long time.
Data can not be stored for long time.
Data can be lost if the written books or paper stolen or lost.
PROPOSED SYSTEM:
Data is stored electronically.
Data can be stored for long time.
ADVANTAGES:
Easy to store the details for the longer time.
Safer alternative to the traditional writing down system.
User can save as much as contacts as he wishes.
REQUIREMENTS
Hardware requirements
Software requirements
Android studio.
Languages
Java.
Xml.
DFD DIAGRAMS
User
Save contact
Introduction to Android:
Android is a mobile operating system based on a modified version of the Linux kernel and
other open-source software, designed primarily for touchscreen mobile devices such as
smartphones and tablets. Android is developed by a consortium of developers known as the
Open Handset Alliance and commercially sponsored by Google. It was unveiled in
November 2007, with the first commercial Android device launched in September 2008. It is
free and open source software; its source code is known as Android Open Source Project
(AOSP), which is primarily licensed under the Apache License. However most Android
devices ship with additional proprietary software preinstalled,[10] most notably Google
Mobile Services (GMS)[11] which includes core apps such as Google Chrome, the digital
distribution platform Google Play and associated Google Play Services development
platform. About 70 percent of Android smartphones run Google's ecosystem;[12] competing
Android ecosystems and forks include Fire OS (developed by Amazon) or LineageOS.
However the "Android" name and logo are trademarks of Google which impose standards to
restrict "uncertified" devices outside their ecosystem to use Android branding.[13][14] The
source code has been used to develop variants of Android on a range of other electronics,
such as game consoles, digital cameras, portable media players, PCs and others, each with a
specialized user interface. Some well known derivatives include Android TV for televisions
and Wear OS for wearables, both developed by Google. Software packages on Android,
which use the APK format, are generally distributed through proprietary application stores
like Google Play Store, Samsung Galaxy Store, and Huawei AppGallery, or open source
platforms like Aptoide or F-Droid. Android has been the best-selling OS worldwide on
smartphones since 2011 and on tablets since 2013. As of May 2017, it has over two billion
monthly active users, the largest installed base of any operating system, and as of January
2021, the Google Play Store features over 3 million apps.[15] The current stable version is
Android 11, released on September 8, 2020.
Introduction to SQLite
SQLite Database: Android also supports inbuilt database which is Android SQLite to develop
any small applications and perform any CRUD (Create, Update, and Delete) operations. As it
A.S. PATIL COLLEGE OF COMMERCE(Autonomous)B.C.A
PROGRAMME
BCA Programme 11
CONTACT MANAGEMENT APPLICATION
is not flexible enough to support substantial number of data, for complex applications we are
using other external databases. 23 4.1.3 Eclipse IDE Android applications could be developed
in Eclipse IDE in which we can compile, run, debug and deploy using ADT (Android
Development Tools). In this project, I have used Eclipse IDE to create Java SOAP Web
Services for connecting the database and used Android Studio to develop the application. The
Android SQLite Database requires very little memory (around 250kb), which is available on
all android devices. Every device has an inbuilt support for SQLite database, which is
automatically managed on android right from its creation, execution to querying up process.
SQLite is an open source database, available on every android database. It supports standard
relations database features, like SQL syntax, transactions & SQL statements. SQLite is
considerably, the lighter version of SQL database, where most of the SQL commands don’t
run on SQLite database. Once SQLite is in place, it is important to ensure that a feature or
command is available in SQLite; only then can it be executed. The Basic Advantages of
SQLite: It’s a light weight database Requires very little memory An Automatically
managed database The SQLite supports only 3 Datatypes: Text (like string) – for storing
data type store Integer (like int) – for storing integer primary key Real (like double)- for
storing long values Basically SQLite does not validate datatypes by itself. In other words,
whatever datatypes are used, they are termed as valid
1) Activity Manager
Applications use the Android activity component for presenting an entry point to the
app. Android Activities are the components that house the user interface that app
users interact with. As end-users interact with the Android device, they start, stop, and
jump back and forth across many applications. Each navigation event triggers
activation and deactivation of many activities in respective applications.
The Android ActivityManager is responsible for predictable and consistent behavior
during application transitions. The ActivityManager provides a slot for app creators to
have their apps react when the Android OS performs global actions. Applications can
listen to events such as device rotation, app destruction due to memory shortage, an
app being shifted out of focus, and so on.
Some examples of the way applications can react to these transitions include pausing
activity in a game, stopping music playing during a phone call.
2) Window Manager
Android can determine screen information to determine the requirements needed to
create windows for applications. Windows are the slots where we can view our app
user interface. Android uses the Window manager to provide this information to the
apps and the system as they run so that they can adapt to the mode the device is
running on.
The Window Manager helps in delivering a customized app experience. Apps can fill
the complete screen for an immersive experience or share the screen with other apps.
Android enables this by allowing multi-windows for each app.
3) Location Manager Most Android devices are equipped with GPS devices that can
get user location using satellite information to which can go all the way to meters
precision. Programmers can prompt for location permission from the users, deliver
location, and aware experiences. Android is also able to utilize wireless technologies
to further enrich location details and increase coverage when devices are enclosed
spaces. Android provides these features under the umbrella of the Location-Manager.
the sim card, and device parts such as the microphone, camera, and speakers. The
software components include native components such as dial pad, phone book,
ringtone profiles. Using the TelephoneManager, a developer can extend or fine-tune
the default calling functionality.
5) Resource Manager Android app usually come with more than just code. They
also have other resources such as icons, audio and video files, animations, text files,
and the like. Android helps in making sure that there is efficient, responsive access to
these resources. It also ensures that the right resources are delivered to the end-users.
For example, the proper language text files are used when populating fields in the
apps.
Code:
package com.example.mycontacts;
import android.app.LoaderManager;
import android.content.ContentUris;
import android.content.CursorLoader;
import android.content.Intent;
import android.content.Loader;
import android.database.Cursor;
import android.net.Uri;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// listview updating
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int
position, long id) {
Intent intent = new Intent(MainActivity.this,
EditorActivity.class);
Uri newUri =
ContentUris.withAppendedId(Contract.ContactEntry.CONTENT_URI, id);
intent.setData(newUri);
startActivity(intent);
}
});
// loader running
getLoaderManager().initLoader(CONTACTLOADER, null, this);
}
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
@Override
public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
mAdapter.swapCursor(data);
}
@Override
public void onLoaderReset(Loader<Cursor> loader) {
mAdapter.swapCursor(null);
}
}
Dbhelper.java
package com.example.mycontacts;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.annotation.Nullable;
import com.example.mycontacts.Contract.ContactEntry;
@Override
public void onCreate(SQLiteDatabase db) {
String SQL_TABLE = "CREATE TABLE " + ContactEntry.TABLE_NAME + " ("
+ ContactEntry._ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ ContactEntry.COLUMN_NAME + " TEXT NOT NULL, "
+ ContactEntry.COLUMN_EMAIL + " TEXT NOT NULL, "
+ ContactEntry.COLUMN_PHONENUMBER + " TEXT NOT NULL, "
+ ContactEntry.COLUMN_TYPEOFCONTACT + " TEXT NOT NULL, "
+ ContactEntry.COLUMN_PICTURE + " TEXT);";
db.execSQL(SQL_TABLE);
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
EditorActivity.java
* Prompt the user to confirm that they want to delete this product.
*/
private void showDeleteConfirmationDialog() {
// Create an AlertDialog.Builder and set the message, and click listeners
// for the positive and negative buttons on the dialog.
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(R.string.delete_dialog_msg);
builder.setPositiveButton(R.string.delete, new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User clicked the "Delete" button, so delete the product.
deleteProduct();
}
});
builder.setNegativeButton(R.string.cancel, new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User clicked the "Cancel" button, so dismiss the dialog
// and continue editing the product.
if (dialog != null) {
dialog.dismiss();
}
}
});
/**
* Perform the deletion of the product in the database.
*/
private void deleteProduct() {
// Only perform the delete if this is an existing product.
if (mCurrentContactUri != null) {
// Call the ContentResolver to delete the product at the given content
URI.
// Pass in null for the selection and selection args because the
mCurrentProductUri
// content URI already identifies the product that we want.
int rowsDeleted = getContentResolver().delete(mCurrentContactUri, null,
null);
Toast.LENGTH_SHORT).show();
}
}
SCREEN SHOTS
Home page
Save Contact
View contacts
FUTURE ENHANCEMENTS:
CONCLUSION
The conclusion of this project is the basic contact managing application which can
save the Name, Number, E-mail, Residential address and a display picture to identify the
saved contact at a glance.
BIBILIOGRAPHY
https://www.github.com
https://www.code.org
https://codeacademy.com