You are on page 1of 23

BCA Programme 1

Pocket Money Manager

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 ourguide “PRAFUL V.H”
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. VEENA MOREfor giving such a wonderful
opportunity and also for encouragement. We show sincere gratitude to our respected
PrincipalProf.V. S. BAGALI 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,
RAVICHANDRA P HALLAD
(BCA18069)

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 2
Pocket Money Manager

ABSTRACT

The main purpose of this application is to allow users to maintain a digital automated diary.
As the name itself suggests, this project is an attempt to manage our daily expenses in a more
efficient and manageable way. Sometime we can’t remember where our money goes. And we
can’t handle our cash flow.For this problem, we need a solution that everyone can manage
their expenses. So we decided to find an easier way to get rid of this problem. So, our
application attempts to free the user with as much as possible the burden of manual
calculation and to keep the track of the expenditure.Instead of keeping a diary or a log of the
expenses, this application enables the user to not just keep the control on the expenses but
also to generate and save reports.

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 3
Pocket Money Manager

CONTENTS

1. Introduction
2. Literature Survey
 Existing System
 Disadvantages of Existing System
 Proposed System
 Advantages of Proposed System

3. System Requirements
 Hardware requirements
 Software requirements
4. DFD Diagrams
5. Technologies used in projects
 Introduction to Android
 Introduction to SQLite
 Introduction to Android Framework

6. Screen Shots
7. Future Enhancements
8. Conclusion
9. Bibliography

INTRODUCTION

Budgeting on a personal level is always a problematic issue faced on a daily basis by almost
each of us. Recording and managing expenses, income/savings are getting very difficult in
today’s busy life which ultimately results in the inefficient planning of personal budget. This

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 4
Pocket Money Manager

proposed application will allow users to track and analyze their expenses, income, and
savings to plan their personal budget, organize their expenses & income and record
movement of money. The application will allow users to set their monthly budget (overall
budget or by expense category) to monitor and control their spending with the help of budget
management. The application will remind the user for any pending bills, expense limit
exceeding mentioned in a budget well before time. The application will provide different
reports regarding expenses and income on the daily, weekly, monthly or yearly basis for
better control over the money.

LITERATURE SURVEY
Existing system:
In existing, we need to maintain the Excel sheets, CSV etc. files for the user daily and
monthly expenses. In existing, there is no as such complete solution to keep a track of its
daily expenditure easily. To do so a person as to keep a log in a diary or in a computer, also
all the calculations needs to be done by the user which may sometimes results in errors
leading to losses.
Disadvantages of Existing System

 Will provide inaccurate results if the data is fed incorrectly


 Manual work
 May get inaccurate results if data is not inserted in correct manner.

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 5
Pocket Money Manager

PROPOSED SYSTEM:
To reduce manual calculations, we propose an application which is developed by Android.
This application allows users to maintain a digital automated diary. Each user will be
required to register on the system at registration time, the user will be provided id, which will
be used to maintain the record of each unique user. This application takes Income from user
and divides in daily expense allowed. If u exceed that days expense it will cut if from your
income and give new daily expense allowed amount, and if that days expense is less it will
add it in savings. Expense tracking application will generate report at the end of month to
show Income-Expense via multiple graphs.

ADVANTAGES
 Builds Discipline and Organization
 Forces You to Think About Money.
 Crisis Prevention
 Budget Planner
 Knowing your spending habits
 Offline application.
 Create a monthly budget

REQUIREMENT

 Hardware requirements
 Processor –i3&i5
 Hard disk-- 500gb
 Memory—4gb RAM
 Android phone with kitkat higher

 Software requirements
 Windows xp, Windows 7,and higher version.
 Eclipse/Android studio
 SQLite server
 Java
 Operating system –android mobile os

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 6
Pocket Money Manager

 Languages
 Java
 XML

DFD DIAGRAMS

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 7
Pocket Money Manager

TECHNOLOGIES USED IN PROJECT

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 pre-installed,[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

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 8
Pocket Money Manager

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.

For example, in this case, the database of a cable operator has been discussed. Here, a new
table is added with ‘text’ in the name field and fieldname box carrying ‘textfield’. A random
value datatype has been created. The end result is a test table with an invalid datatype, which
shows that SQLite doesn’t validate datatype.

*One can find the database by clicking on package and accessing the data folder to the
database folder, which contains the file.

Note: The SQLiteOpen Helper class is used to manage database creation and version
management.

Introduction to Android Framework

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 9
Pocket Money Manager

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.

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 10
Pocket Money Manager

4) Telephony Manager
Most Android devices serve a primary role in telephony. Android uses TelephoneManager to
combine hardware and software components to deliver telephony features. The hardware
components include external parts such as 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.

6) View System
Android also provides a means to easily create common visual components needed for app
interaction. These components include widgets like buttons, image holders such as
ImageView, components to display a list of items such as ListView, and many more. The
components are premade but are also customizable to fit app developer needs and branding.

7) Notification Manager
The Notification Manager is responsible for informing Android users of application events. It
does this by giving users visual, audio or vibration signals or a combination of them when an
event occurs. These events have external and internal triggers. Some examples of internal
triggers are low-battery status events that trigger a notification to show low battery. Another
example is user-specified events like an alarm. Some examples of external triggers include
new messages or new wifi networks detected. Android provides a means for programmers
and end-users to fine-tune the notifications system. This can help to guarantee they can send
and receive notification events in a means that best suits them and their current environments.

Code:

Add CategoryActivity

package com.example.moneymanager;

import java.io.ByteArrayOutputStream;

import android.os.Bundle;
import android.view.View;
import android.widget.EditText;

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 11
Pocket Money Manager

import android.widget.ImageButton;
import android.widget.Toast;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;

public class AddCategoryActivity extends Activity


{
ImageButton i_btn1;
EditText editText;
int i=R.drawable.select;
byte[] img;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_category);
i_btn1 = (ImageButton)findViewById(R.id.add_category_image_btn)
;
editText = (EditText)findViewById(R.id.add_category_e1);
}
public void Next(View view)
{
Intent intent = new Intent(this, SelectIconActivity.class);
startActivityForResult(intent, 1);
}

public void click(View v)


{
String str = editText.getText().toString();
if(str.equals(""))
{
Toast.makeText(this, "Can't LEAVE blank field",
Toast.LENGTH_LONG).show();
}
else
{
MainActivity main = new MainActivity();
main.finish();

// enter image into database


Bitmap b=BitmapFactory.decodeResource(getResources(), i);
ByteArrayOutputStream bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();// to change into byte
// Create category class Reference
Category category = new Category(str, img);
// DBHelper class
DBHelper helper = new DBHelper(this);
helper.insertData(category);
i_btn1.setImageResource(R.drawable.select);
editText.setText("");
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
}

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 12
Pocket Money Manager

@Override
protected void onActivityResult(int requestCode, int resultCode,
android.content.Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
i = data.getIntExtra("image",R.drawable.select);
i_btn1.setImageResource(i);

}
@Override
public void onBackPressed()
{
super.onBackPressed();
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}}

CreateActivity
package com.example.moneymanager;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class CreateActivity extends Activity implements OnClickListener

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 13
Pocket Money Manager

{
private EditText et1,et2,et3;
Button next;
String str;
String EMAIL_PATTERN;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_create);
et1 = (EditText)findViewById(R.id.create_editText1);
et2 = (EditText)findViewById(R.id.create_editText2);
et3 = (EditText)findViewById(R.id.create_editText3);
next = (Button)findViewById(R.id.create_button);
next.setOnClickListener(this);
et3.setOnClickListener(this);
EMAIL_PATTERN = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";

}
@Override
public void onClick(View v)
{
// click for button
if(v.getId()== R.id.create_button)
{
if(et1.getText().toString().equals("")||
et2.getText().toString().equals("")||et3.getText().toString().equals(""))
{
Toast.makeText(this, "Can't LEAVE blank fields",
Toast.LENGTH_LONG).show();
}
else if(!et2.getText().toString().matches(EMAIL_PATTERN))
{
Toast.makeText(this, "Email Address Is Not Properly",
Toast.LENGTH_LONG).show();
}
else
{
SharedPreferences preferences = getSharedPreferences("wallet", 0);
Editor editor = preferences.edit();
editor.putString("name", et1.getText().toString());
editor.putString("email", et2.getText().toString());
editor.putString("currency", et3.getText().toString());
editor.putString("symbol", str);
editor.commit();
Intent intent = new Intent(this,MainActivity.class);
startActivity(intent);
finish();
}}
// click event for edit text
if(v.getId()==R.id.create_editText3)
{
Intent intent = new Intent(this,CurrencyList.class);
startActivityForResult(intent, 1);
}
}
//for retrun from activity
@Override
protected void onActivityResult(int requestCode,int resultCode,Intent data)

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 14
Pocket Money Manager

{
super.onActivityResult(requestCode, resultCode, data);
et3.setText(data.getStringExtra("currency"));
str = data.getStringExtra("symbol");
}
}

MainActivity
package com.example.moneymanager;
import java.io.ByteArrayOutputStream;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
import android.app.ActionBar;
import android.app.ActionBar.Tab;
import android.app.ActionBar.TabListener;
import android.app.FragmentTransaction;
import android.content.Intent;
import android.content.SharedPreferences;

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 15
Pocket Money Manager

import android.content.SharedPreferences.Editor;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
public class MainActivity extends FragmentActivity implements
TabListener,OnClickListener
{
Intent intent;
ViewPager pager;
ActionBar actionBar;
Button
add_incm_btn,add_expnc_btn,add_cat_btn,view_expnc_btn,Add_Borrow,Send_msg;
SQLiteDatabase db;
boolean flag;
static int i=1;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SharedPreferences preferences1 = getSharedPreferences("wallet", 0);
flag = preferences1.getBoolean("flag", true);
if(flag == true)
{
preferences1.edit().putBoolean("flag", false).commit();
DBHelper helper = new DBHelper(this);
preDefine(helper);
}
//add income
add_incm_btn = (Button)findViewById(R.id.H_income);
add_incm_btn.setOnClickListener(this);
//add expense
add_expnc_btn = (Button)findViewById(R.id.H_expence);
add_expnc_btn.setOnClickListener(this);

//add expense
add_cat_btn = (Button)findViewById(R.id.H_category);
add_cat_btn.setOnClickListener(this);

//add expense
view_expnc_btn = (Button)findViewById(R.id.H_view_expence);
view_expnc_btn.setOnClickListener(this);

//add borrow
Add_Borrow = (Button)findViewById(R.id.H_view_expence1);
Add_Borrow.setOnClickListener(this);

//Send msg
Send_msg = (Button)findViewById(R.id.H_view_expence12);
Send_msg.setOnClickListener(this);

SharedPreferences preferences = getSharedPreferences("wallet",


0);
String name = preferences.getString("name", "not found");
if(name.equals("not found"))
{
intent = new Intent(this, CreateActivity.class);
startActivity(intent);

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 16
Pocket Money Manager

finish();
}
pager = (ViewPager)findViewById(R.id.Viewpager);
pager.setAdapter(new MyAdapter(getSupportFragmentManager()));
actionBar = getActionBar();
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM
| ActionBar.NAVIGATION_MODE_TABS);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
Tab tab1 = actionBar.newTab();
tab1.setText("Expence");
tab1.setTabListener(this);
Tab tab2 = actionBar.newTab();
tab2.setText("Balance");
tab2.setTabListener(this);
actionBar.addTab(tab1);
actionBar.addTab(tab2);
pager.setOnPageChangeListener(new OnPageChangeListener() {

@Override
public void onPageSelected(int arg0) {
actionBar.setSelectedNavigationItem(arg0);

}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
}
class MyAdapter extends FragmentPagerAdapter
{
public MyAdapter(FragmentManager fm)
{
super(fm);
}
@Override
public Fragment getItem(int i)
{
Fragment fragment=null;
switch (i) {
case 0:
fragment = new Expence();
break;
case 1:
fragment = new Income();
break;
default:
break;
}
return fragment;
}
@Override
public int getCount()
{
// TODO Auto-generated method stub

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 17
Pocket Money Manager

return 2;
}
}
@Override
public void onTabReselected(Tab arg0, FragmentTransaction arg1)
{

}
@Override
public void onTabSelected(Tab arg0, FragmentTransaction arg1) {
// TODO Auto-generated method stub
pager.setCurrentItem(arg0.getPosition());
}
@Override
public void onTabUnselected(Tab arg0, FragmentTransaction arg1) {
// TODO Auto-generated method stub
}
@Override
public void onClick(View arg0)
{
Intent intent;
switch (arg0.getId())
{
case R.id.H_income:
intent = new Intent(this, AddIncomeActivity.class);
startActivity(intent);
finish();
break;
case R.id.H_expence:
intent = new Intent(this, AddExpenseActivity.class);
startActivity(intent);
finish();
break;

case R.id.H_category:
intent = new Intent(this, AddCategoryActivity.class);
startActivity(intent);
finish();
break;

case R.id.H_view_expence:
intent = new Intent(this, ViewExpenseActivity.class);
startActivity(intent);
finish();
break;

case R.id.H_view_expence1:
intent = new Intent(this,Add_Borrow.class);
startActivity(intent);
finish();
break;
case R.id.H_view_expence12:
intent = new Intent(this,Send_Msg.class);
startActivity(intent);
finish();
default:
break;
}}

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 18
Pocket Money Manager

//pre Enter values Function


public void preDefine(DBHelper help)
{
Category cat;
int i;
byte[] img;
DBHelper helper = help;
//Food & Drink
i = R.drawable.pic49;
Bitmap b = BitmapFactory.decodeResource(getResources(), i);
ByteArrayOutputStream bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Food & Drink", img);
helper.insertData(cat);

// Transport
i = R.drawable.pic53;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Transport", img);
helper.insertData(cat);

// Education
i = R.drawable.pic55;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Education", img);
helper.insertData(cat);

// Entertainment
i = R.drawable.pic48;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Entertainment", img);
helper.insertData(cat);

// Medical
i = R.drawable.pic50;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Medical", img);
helper.insertData(cat);
// Shopping
i = R.drawable.pic52;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Shopping", img);

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 19
Pocket Money Manager

helper.insertData(cat);

// Medical
i = R.drawable.pic54;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Travel", img);
helper.insertData(cat);

// Medical
i = R.drawable.pic51;
b = BitmapFactory.decodeResource(getResources(), i);
bos=new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.PNG, 100, bos);
img=bos.toByteArray();
cat = new Category("Other", img);
helper.insertData(cat);
}
@Override
public void onBackPressed()
{
finish();
super.onBackPressed();
}}

SCREEN SHOTS

Home page

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 20
Pocket Money Manager

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 21
Pocket Money Manager

Add amount page Add Expense page

show page

Registation page

FUTURE ENHANCEMENTS:

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 22
Pocket Money Manager

For the future work we have decided to add a confirmation from the user whether they

have taken the medicine or not. If they haven’t taken the medicine the information will be

send to the doctor and he can they reschedule the further medicine reminders according to the

new schedule. Overall, Medicine Remainder is a much needed system by the elderly people

in our homes. It helps them in taking their medications in the prescribed quantity and at the

prescribed time.

CONCLUSION

Tracking your expenses daily can save your amount, but it can also help you set
financial goals for the future. If you know exactly where your amount is going every month,
you can easily see where some cutbacks and compromises can be made. The project what we
have developed is work more efficient than the other income and expense tracker. The project
successfully avoids the manual calculation for avoiding calculating the income and expense
per month. The modules are developed with efficient and also in an attractive manner.

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME


BCA Programme 23
Pocket Money Manager

BIBILIOGRAPHY

https://www.studentprojectguide.com/

https://www.freestudentprojects.com/android-projects/pocket-money-
manager/

https://projectworlds.in/android-projects-with-source-
code/expense-tracker-android-app-source-code/

A.S.PATILCOLLEGE OF COMMERCE(Autonomous)B.C.A PROGRAMME

You might also like