Mobile Comp Mini
Mobile Comp Mini
On
A Report Submitted for a mini project for Mobile Computing in 1st Semester of
Final Year Computer Engineering
Pune-411041.
1
Zeal Education Society’s
Computer Engineering
CERTIFICATE
This is to certify that Mr. Dipraj Suhas Vasav is Bonafide student of this institute and
the work has been carried out by him under the supervision of Prof. Komal Bhosale and
it is approved for the partial fulfillment of the requirement of Savitribai Phule Pune
University, for the award of Fourth Year Engineering (Computer Engineering).It is
certified that all corrections/suggestions indicated for internal assignment have been
incorporated in the report. The Mini project report has been approved as it satisfies the
academic requirements in respect of project work prescribed for the Bachelor of
Engineering Degree.
2
ACKNOWLEDGEMENT
I take this opportunity to thank our project guide Prof. Komal Bhosale and Head of
Department Prof. A. V. Mote for their valuable guidance and for providing all the
necessary facilities, which were indispensable in the completion of this project report. I
am also thankful to all the staff members of the Computer Engineering Department for
their valuable time, support, comments, suggestions and persuasion. I would also like to
thank the institute for providing the required facilities, Internet access and important
books.
3
INDEX
No. No.
1. Abstract 05
2. Introduction 06
3. Problem Statement 07
5. Implementation 08-14
6. Conclusion 15
4
ABSTRACT
5
INTRODUCTION
In today's digital age, mobile applications have revolutionized the way we manage our
finances, making banking services more accessible and efficient. This project focuses on
creating a banking application using Flutter, a modern UI toolkit for building natively
compiled applications for mobile, web, and desktop from a single codebase. The goal is to
develop an application that provides essential banking functionalities, including account
creation and money deposit, while ensuring a seamless and intuitive user experience.
The application is designed to address the growing demand for user-friendly banking
solutions, especially among young users who prefer mobile platforms for managing their
financial transactions. By leveraging Flutter's rich set of pre-built widgets and powerful
features, the project aims to create a responsive and visually appealing interface that enhances
user engagement.
Key features of the application include the ability to create new customer accounts by
entering basic information such as name and account number. Once an account is established,
users can navigate to the deposit screen, where they can input the amount they wish to
deposit into their accounts. The inclusion of a bottom navigation bar allows for easy
switching between functionalities, thereby improving the overall usability of the app.
6
PROBLEM STATEMENT
7
IMPLEMENTATION and Code
// lib/create_account_screen.dart
import 'package:flutter/material.dart';
void createAccount() {
String name = nameController.text;
String accountNumber = accountNumberController.text;
@override
Widget build(BuildContext context) {
return Scaffold(
8
appBar: AppBar(title: Text('Create Account')),
body: Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
children: [
TextField(
controller: nameController,
decoration: InputDecoration(labelText: 'Enter Name'),
),
TextField(
controller: accountNumberController,
decoration: InputDecoration(labelText: 'Enter Account Number'),
keyboardType: TextInputType.number,
),
SizedBox(height: 20),
ElevatedButton( onPresse
d: createAccount,
child: Text('Create Account'),
),
],
),
),
);
}
}
// lib/deposit_screen.dart
import 'package:flutter/material.dart';
DepositScreen({required this.accountNumber});
@override
_DepositScreenState createState() => _DepositScreenState();
}
9
void depositMoney() {
String amount = amountController.text;
if (amount.isNotEmpty) {
// Show a success message
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('Successfully deposited \$${amount} to account
${widget.accountNumber}')),
);
amountController.clear();
} else {
// Show an error message
ScaffoldMessenger.of(context).showSnackBar( SnackBar(c
ontent: Text('Please enter an amount')),
);
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Deposit Money')),
body: Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
children: [
TextField(
controller: amountController,
decoration: InputDecoration(labelText: 'Enter Amount'),
keyboardType: TextInputType.number,
),
SizedBox(height: 20),
ElevatedButton( onPressed
: depositMoney,
child: Text('Deposit Money'),
),
],
),
),
);
}
}
10
// lib/main.dart
import 'package:flutter/material.dart';
import 'create_account_screen.dart';
import 'deposit_screen.dart';
void main() {
runApp(MyBankApp());
}
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Bank App',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: Scaffold(
appBar: AppBar(title: Text('Bank Application')),
body: _screens[_selectedIndex],
bottomNavigationBar:
BottomNavigationBar( items: const
11
<BottomNavigationBarItem>[
12
BottomNavigationBarItem( icon
: Icon(Icons.person_add),
label: 'Create Account',
),
BottomNavigationBarItem(
icon: Icon(Icons.attach_money),
label: 'Deposit Money',
),
],
currentIndex: _selectedIndex,
onTap: _onItemTapped,
),
),
);
}
}
13
14
15
CONCLUSION
16