You are on page 1of 16

[P-1]

A PRELIMENERY REPORT ON

“Ex-Book”

SUBMITTED TO THE SAVITRIBAI PHULE PUNEUNIVERSITY , PUNE


IN THE PARTIAL FULFILLMENT OF THE REQUIREMENTS

OF

THIRD YEAR COMPUTER ENGINEERING

SUBMITTED BY

SUMER KHATRI 18U354


SARVESH JOSHI 18U356
RUSHIKESH MAHAMUNE 18U357

DEPARTMENT OF COMPUTER ENGINEERING


STES’S SMT. KASHIBAINAVALECOLLEGE OF ENGINEERING
VADGAON BK, OFF SINHGAD ROAD, PUNE 411041

SAVITRIBAI PHULE PUNE UNIVERSITY


2018 -2019

[P-2]

SKNCOE, Department of Computer Engineering 2018-19


1
CERTIFICATE

This is to certify that the project report entitles

“Ex-Book”

Submitted by

SUMER KHATRI 18U354


SARVESH JOSHI 18U356
RUSHIKESH MAHAMUNE 18U357

is a bonafide work carried out by him/her under the supervision of Prof. JYOTI
NANDIMATH and it is approved for the partial fulfillment of the requirement of third year
computer engineering.

(Prof. Jyoti Nandimath) (Dr. P. N. Mahalle)


Guide Head,
Department of Computer Engineering Department of Computer Engineering

(Dr. A. V. Deshpande)
Principal,
Smt.KashibaiNavaleCollege of Engineering Pune – 41

Place: Pune

Date: 1st OCT, 2018

SKNCOE, Department of Computer Engineering 2018-19


2
ACKNOWLEDGEMENT
We would like to express my gratitude to Prof B.N.Vyawahare, my project advisor for
providing me an opportunity to work on this project, which gave me a great exposure to
develop the skills towards Android Application Development. I thank them for their generous
advice and encouragement which helped us to complete the project successfully.

The success and final outcome of this project required a lot of guidance and assistance from
many people and I am extremely privileged to have got this all along the completion of my
project. All that I have done is only due to such supervision and assistance and I would not
forget to thank them.

Lastly, I would like to thank the entire faculty and staff of the Department of Computer Science
SKNCOE.

NAME OF THE STUDENTS


STUDENT NAME:- SUMER KHATRI ROLL NO :354
STUDENT NAME:- SARVESH JOSHI ROLL NO :356
STUDENT NAME:- RUSHIKESH MAHAMUNE ROLL NO :357

SKNCOE, Department of Computer Engineering 2018-19


3
CHAPTER TITLE PAGE NO
(12, bold, UPPERCASE)

Sr.No. Chapters Page


No.
01 Abstract
02 Problem Definition
03 Motivation
04 Software Requirements Specification
4.1 Introduction
4.2 Project Scope
4.3 Functional Requirements

4.3.1 Google Sign in Button


4.3.2 RecyclerView
4.3.3 Card View
4.3.4 Image Posting

4.4 System Requirements


4.1 Database Requirements
4.2 Software Requirements
4.5 Non functional Requirements
05 Other Specifications
5.1 Advantages

5.2 Disadvantages

5.3 Applications
06 Results & Discussion
6.1 Screenshots
6.2 Conclusion

SKNCOE, Department of Computer Engineering 2018-19


4
01.ABSTRACT

Book shopping App allows users to check for various Books Instruments and can purchase
them. The project consists of list of Books displayed in various models and designs. The user
may browse through these products as per categories. If the user likes a product he may add it
to his shopping cart. The User can view the items based on their names & Price in.

The User must first register into the system and then is eligible to check out the products. The .
The Front End of the App is done using Android Studio and FIREBASE serves as a backend to
store books lists and inventory data. The products are added by the Admin. Thus the online
books shopping project brings an entire Books Store online and makes it easy for both buyer
and seller to make deals on Books.Admin is responsible for changing the status of the orders.

SKNCOE, Department of Computer Engineering 2018-19


5
02.PROBLEM DEFINATION
 To build and design an app from which users can buy or sell the books online.
 This app also provides functionality to view the images and description of books.
 The app should provide user contact info of seller so he can directly buy the books from
seller.
 The app also provides notification to the users.

SKNCOE, Department of Computer Engineering 2018-19


6
FUNCTIONAL SYSTEM REQUIREMENTS

4.1.INTRODUCTION:

The purpose of this project is to provide the user the second hand copy of books directly
from owner excluding the third person (ie.shopkeepers) . We have created this app so the
student can get their books at a considerable rate. Ex-Book the name itself suggest that the
used books are sold here at a less amount.

It’s an online portal for buying and selling old used books. Our platform will also provide an
opportunity to people who normally buy new books, but would like to sell them after they
have read them.

In India there are many people who are fond of reading academic books. However, not many
of them are regular in reading books because the new books are costly. Academic book is
one section of the market which has not been property explored by any one company, and is
still governed by small shops in vicinity of schools and colleges they make more profit,but
our app will exclude them making direct contact between buyer and seller.

4.2.PROJECT SCOPE

The scope of this app is to provide online portal for buying and selling books. Following are
some points which describe the scope of this app.
1. To provide user to buy book online.
2. To add/delete user manage their accounts.
3. To provide user friendly environment.
4. To get the minimum price for purchase.

4.3.FUNCTIONAL REQUIREMENTS

4.3.1.GOOGLE SIGN IN ACTIVITY

What is Google sign in:


Google sign in activity is used to provide a button in your app, which by clicking will show
our available logged in account in phone. And then we can choose one of the account(if more
than one available) and we will be signed in in the app with that account info.

How to add Google sign in:


Since we need to connect to the Network while authenticating, you’ll need to add the Internet

SKNCOE, Department of Computer Engineering 2018-19


7
permission in your AndroidManifest.xml file which is more like a configuration file for your
App.

AndroidManifest.xml file

<uses-permission android:name=”android.permission.INTERNET”/>

open your project’s build.gradle file from the project’s home directory and add the following
dependency. Please note that i’m not talking about the module or app’s build.gradle file, we’ll
get to that in the next step

Build.gradle file

classpath ‘com.google.gms:google-services:3.0.0’

Next, open your app’s build.gradle from the and add the following at the end of the file.

Build.gradle

Also add the following dependency in the dependency section.

apply plugin: ‘com.google.gms.google-services’

compile ‘com.google.firebase:firebase-core:10.2.0’
compile ‘com.google.firebase:firebase-auth:10.2.0’
compile ‘com.google.android.gms:play-services-auth:10.2.0’

Adding the button

For this just create a activity and add the google sign in button code to it.
After performing this you will get the official button of google’s sign in options.

SKNCOE, Department of Computer Engineering 2018-19


8
4.3.2.RECYCLER VIEW

What is recycler View:

Android RecyclerView is more advanced version of ListView with improved performance


and other benefits.Using RecyclerView and CardView together, both lists and grids can be
created very easily.__

Adding code to xml file:


For adding RecyclerView in the layout just add the following code to your activity.xml file.

<android.support.v7.widget.RecyclerView
android:id="@+id/book_list"
android:layout_width="match_parent"

android:layout_height="match_parent"></android.support.v7.widget.Rec
yclerView>

Add the dependency to your code in app level gradle file:

implementation 'com.android.support:recyclerview-v7:28.0.0'

4.3.3.CARD VIEW

SKNCOE, Department of Computer Engineering 2018-19


9
What is Card View:

A card view is a format in which the contents present on the page such as image or any sort
of information will be shown in card format.

Adding code to xml file:

<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/card_view"
android:layout_width="match_parent"
android:layout_height="match_parent"

card_view:cardBackgroundColor="@android:color/transparent"
card_view:cardCornerRadius="20dp"
card_view:cardElevation="12dp">

Add the dependency to your code in app level gradle file :

implementation 'com.android.support:cardview-v7:28.0.0'

4.3.4.ACTIVITY FOR POSTING THE IMAGE AND DESCRIPTION OF


BOOK:

In this activity we will create UI which will help users to upload the images and description
of the book.

SKNCOE, Department of Computer Engineering 2018-19


10
__

This is how this activity_post look like which will contain three text views , one image and
one button which will submit the post.

Create a child called book in firebase under which all other records will be stored following
commands are used.
mStorage= FirebaseStorage.getInstance().getReference();
mDatabase= FirebaseDatabase.getInstance().getReference().child("Book");

Write this code is activity_post

filepath.putFile(mimageUri).continueWithTask(new
Continuation<UploadTask.TaskSnapshot, Task<Uri>>() {
@Override
public Task<Uri> then(@NonNull Task<UploadTask.TaskSnapshot> task) throws
Exception {
if (!task.isSuccessful()) {
throw task.getException();
}

// Continue with the task to get the download URL


return filepath.getDownloadUrl();
}
}).addOnCompleteListener(new OnCompleteListener<Uri>() {
@Override
public void onComplete(@NonNull Task<Uri> task) {
if (task.isSuccessful()) {

SKNCOE, Department of Computer Engineering 2018-19


11
Uri downloadUri = task.getResult();

DatabaseReference newPost=mDatabase.push();

newPost.child("title").setValue(title_val);
newPost.child("desc").setValue(desc_val);
newPost.child("subject").setValue(subject_val);
newPost.child("image").setValue(downloadUri.toString().trim());

mProgress.dismiss();

startActivity(new Intent(PostActivity.this,Main3Activity.class));

} else {
// Handle failures
// ...
}
}
});

4.3.5.Picasso and cache handling using Picasso:

Images add much-needed context and visual flair to Android applications. Picasso allows for
hassle-free image loading in your application—often in one line of code!
Picasso.get().load("http://i.imgur.com/DvpvklR.png").into(imageView);

Many common pitfalls of image loading on Android are handled automatically by Picasso:

 Handling ImageView recycling and download cancelation in an adapter.


 Complex image transformations with minimal memory use.
 Automatic memory and disk caching.

The following code loads images into Picasso library:

Picasso.get().load(profiles.get(i).getImage()).networkPolicy(Network
Policy.OFFLINE).into(myViewHolder.image);

For cache handling add this:

Picasso.Builder builder = new Picasso.Builder(this);


builder.downloader(new OkHttp3Downloader(this,Integer.MAX_VALUE));
Picasso built = builder.build();
built.setIndicatorsEnabled(true);
built.setLoggingEnabled(true);
Picasso.setSingletonInstance(built);

SKNCOE, Department of Computer Engineering 2018-19


12
5.OTHER SPECIFICATION

5.1.ADVANTAGES_

1) Convenient way to buy book online.


2) Cost reducing – cost of book is less as no third person is involved.
3) Global availability- from anywhere we can buy book online.
4) Sellers contact info is available so that buyers can contact them for more discount any
other query.
5) Searching becomes easy.
6) Seller can also post the images of the books(for knowing the condition).

5.2.DISADVANTAGES

1)Cannot delete a book after uploading it.

6.RESULTS AND DISCUSSIONS:

6.1.Screenshots::

SKNCOE, Department of Computer Engineering 2018-19


13
SKNCOE, Department of Computer Engineering 2018-19
14
Conclusion:
__________Thus we have build an app for selling and buying books online .
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
_______________________________________________

SKNCOE, Department of Computer Engineering 2018-19


15
SKNCOE, Department of Computer Engineering 2018-19
16

You might also like