0% found this document useful (0 votes)
105 views24 pages

Madmicroproject

The document describes a project to develop a program that allows users to send and receive emails on Android devices. It includes an abstract, introduction, problem statement, list of modules to be included, proposed methodology and other details about the project.

Uploaded by

pengupanda07
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
105 views24 pages

Madmicroproject

The document describes a project to develop a program that allows users to send and receive emails on Android devices. It includes an abstract, introduction, problem statement, list of modules to be included, proposed methodology and other details about the project.

Uploaded by

pengupanda07
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

A PROJECT REPORT

ON

“ Develop a program to send and receive an email”

SUBMITTED IN PARTIAL FUIFILLMENT OF THE


REQUIREMENTS FOR THE AWARD OF
DIPLOMA IN COMPUTER ENGINEERING

SUBMITTED TO

MAHARSHTRA STATE BOARD OF TECHNICAL

EDUCATION , MUMBAI

SUBMITTED BY

Sr. Name Of Student Enrollment No.


No.
1. Tejas Rajendra Padigel 2112010025

2. Nilakshi Rajeram Raut 2112010027

3. Astha Dinesh Varma 2112010030

4. Mahir Sarita Choudhari 2112010032

5. Sahil Rajesh Jumnake 2112010013

GUIDED BY :- Mr. Parag Gajbhiye


J D COLLEGE OF ENGINEERING & MANAGEMENT
(DIPLOMA), NAGPUR (1201)

Certificate

This is to certify that the project report entitled “Develop a program to send and
receive an email” was successfully co mpleted by student of sixth semester Diploma
in Computer engineering.

Sr. Name Of Student Enrollment No.


No.
1. Tejas Rajendra Padigel 2112010025

2. Nilakshi Rajeram Raut 2112010027

3. Astha Dinesh Varma 2112010030

4. Mahir Sarita Choudhari 2112010032

5. Sahil Rajesh Jumnake 2112010013

In partial fulfilment of the requirement for the award of the Diploma in Computer
Engineering and submitted to the Department of JD college of Engineering &
Management(Diploma),Nagpur work carried out during period for the academic year
2023-2024 as per curriculum.

Name of Guide Name of HOD


(Mr.Parag Gajbhiye) (Mr. Swapnil Warade)
TEACHER EVALUATION SHEET FOR MICRO- PROJECT

Course Title and code :- MAD (Mobile Application Development ) ( 22617)

Title of the Project:- Develop a program to send and receive an email

Group no:- 02

Co 1 Develop rich user Interfaces by using layouts and controls


Co 2 Use user interface components for android application development

Marks :-

Marks Marks obtained


for by the individual Total
Roll No. Name Of Student Group based on viva Marks
Work (10) Remark
(04)
(06)
01 Tejas Rajendra Padigel

02 Nilakshi Rajeram Raut

03 Astha Dinesh Varma

04 Mahir Sarita Choudhari

05 Sahil Rajesh Jumnake

Name and designation of faculty Member : - Mr. Parag Gajbhiye


(Lecturer in computer department)

Signature: _______________________________________________
Sr. CONTENTS Page
No. No.

1. Abstract 1

2. Introduction 2

3. Problem statement 3

4. Modules 4

5. Proposed Methodology 5

6. Method Used 6

7. Hardware Requirement / Software Requirement 8

8. Program code 9

9. Result Analysis 15

10. Application 18

11. Conclusion 19

12. References 20
Abstract

This project aims to develop a program that facilitates the sending and receiving of emails. The program will
have two main functionalities: sending emails to specified recipients and receiving incoming emails. The
sending functionality will include features such as composing emails, adding attachments, specifying recipients,
and sending the email. On the other hand, the receiving functionality will involve checking for new emails,
displaying the email content, and allowing the user to manage received emails (e.g., marking as read, deleting).
The program will be designed to be user-friendly, with a simple and intuitive interface for easy navigation and
operation.

Keywords :- Email, Sending emails, Receiving emails, Composing emails, Adding attachments, Specifying
recipients.

1
Introduction

In today's digital era, email communication plays a vital role in personal and professional interactions. The
ability to send and receive emails efficiently is essential for staying connected and managing communication
effectively. This project focuses on developing a program that enables users to seamlessly send and receive
emails. By creating a user-friendly interface and incorporating essential features such as composing emails,
adding attachments, managing recipients, and organizing received emails, this program aims to enhance the
email communication experience. The program will be designed to be intuitive and accessible, catering to
users who rely on email as a primary means of communication.
Alternative platforms to run the program could include iOS development using Xcode, web development using
HTML/CSS/JavaScript, or desktop development using Java and the JavaMail API. However, for this project,
Android Studio was chosen as the preferred platform due to its popularity and widespread use for mobile app
development.
By leveraging the capabilities of Android Studio, the program can be easily integrated with Android devices
and take advantage of the platform's robust features for handling email communication. The program will also
be optimized for performance and security to ensure a seamless and secure email experience for users.
Overall, this project will provide a comprehensive email solution for Android users, offering a reliable and
efficient way to send and receive emails on their mobile devices.

2
Problem statement

Here are a few possible problem statements for your email program:

1. Develop a program that allows users to send an email to a specified recipient, including a subject line
and message body. The program should also be able to receive emails, displaying the sender, subject,
and message to the user.

2. Create a program that allows users to input their email credentials and send an email to a specified
recipient. The program should also be able to check for new emails in the user's inbox, displaying the
sender, subject, and message for each email.

3. Design a program that enables users to compose and send emails to multiple recipients, with the option
to add attachments. The program should also be able to receive emails and notify the user of any new
messages in their inbox, displaying the sender, subject, and message content.

3
Modules

Modules for the program to send and receive emails:


1. Sending Email:
 Add necessary permissions in the AndroidManifest.xml file for sending emails (INTERNET,
ACCESS_WIFI_STATE, and AUTHENTICATE_ACCOUNTS).

 Create an EditText field for the recipient, subject, and message in the activity_main.xml layout.

 Implement the logic in MainActivity.java to fetch the recipient, subject, and message from the EditText
fields, create an Intent with the necessary email content, and start an activity to send the email.

 Include a button in the layout with an onClick listener that triggers the sendEmail method in
MainActivity.java.

 Make sure the Intent type is set to "message/rfc822" for sending emails.

2. Receiving Email:
 Create a BroadcastReceiver class (GmailReceiver.java) to handle the custom intent for receiving emails.

 Implement the onReceive method in GmailReceiver.java to display a toast message indicating that an
email has been received.

 Register the BroadcastReceiver (GmailReceiver) in the MainActivity.java using an IntentFilter with the
custom intent "com.fso.CUSTOM_INTENT".

 Add the necessary permissions in the AndroidManifest.xml file for receiving emails and defining the
custom intent in the receiver tag.

4
Proposed Methodology

1. Requirement Analysis: The first step is to gather and analyze the requirements for the email sending and
receiving program. This includes understanding the desired features, user interface design, email server
configurations, and security considerations.

2. Design Phase: In this phase, the system architecture is designed, including the modules outlined earlier. The
user interface is designed to be intuitive and user-friendly, focusing on ease of use for composing emails,
managing contacts, and viewing received emails.

3. Implementation: The program is developed using a suitable programming language and framework. The
modules are implemented according to the design specifications, ensuring proper functionality for sending and
receiving emails, managing contacts, handling attachments, and communicating with email servers.

4. Integration Testing: Once the modules are developed, they are integrated to ensure seamless interaction
and data flow between different components. Integration testing verifies that the program functions as expected
when all modules are combined.

5. User Acceptance Testing (UAT): The program is tested by users to validate its functionality, usability, and
performance. Feedback from users is gathered and incorporated to refine the program further.

6. Security Testing: Security testing is conducted to identify and address potential vulnerabilities in the
program, especially concerning email communication, user authentication, and data encryption.

following this proposed methodology, the program to send and receive emails can be developed systematically,
ensuring its functionality, usability, security, and scalability.

5
Method used

In this practical , you will make a basic Android Application that can be used to send email through your android
application. You can do so with the help of Intent with action as ACTION_SEND with extra fields:

 email id to which you want to send mail,

 the subject of the email and

 body of the email.

Basically Intent is a simple message object that is used to communicate between android components such as
activities, content providers, broadcast receivers, and services, here use to send the email. This application
basically contains one activity with Edit Text to take input of email address, subject, and body of the email
from the user and button to send that email.

Step by Step Implementation

Step 1: Create a New Project in Android Studio

To create a new project in Android Studio please refer to How to Create/Start a New Project in Android Studio.
The code for that has been given in both Java and Kotlin Programming Language for Android

Step 2: Working with the XML Files

Next, go to the activity_main.xml file, which represents the UI of the project. Below is the code for the
activity_main.xml file. Comments are added inside the code to understand the code in more detail. This file
contains a Relative Layout which contains three Edit texts for receiver mail id, another for the subject of the
mail, and last one for the body of the email, and three Text Views for the label and a button for starting intent
or sending mail.

6
Step 3: Working with the Main Activity File

Go to the Main Activity File and refer to the following code. Below is the code for the Main Activity File.
Comments are added inside the code to understand the code in more detai In Main Activity Intent object is
created and its action is defined to ACTION_SEND to send an email, with Intent three extra fields are also
added using the put Extra function. These fields are:

 Email of receiver
 Subject of email
 Body of email

7
Hardware Requirements

 Processor : Intel Pentium III or later

 Main Memory (RAM) : 8GB/Above

 Cache Memory : 512 KB

 Monitor : 14 inch color Monitor

 Keyboard : 108 Keys

 Mouse : Optical Mouse

 Hard Disk : 456GB

Software Requirements

 Front End : Java

 Black End : SQLite

 Additional Tools :Microsoft Word

 Operating System : Windows 11

 Required Software :Android Studio

8
Program code

For sending email:-


Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
tools:context=".MainActivity">

<EditText
android:id="@+id/editTextTo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="To"
android:minHeight="48dp"
tools:ignore="DuplicateClickableBoundsCheck" />

<EditText
android:id="@+id/editTextSubject"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/editTextTo"
android:hint="Subject"
android:minHeight="48dp" />

9
<EditText

android:id="@+id/editTextMessage"
android:layout_width="match_parent"

android:layout_height="wrap_content"
android:layout_below="@+id/editTextSubject"
android:hint="Message"
android:minHeight="48dp" />

<Button
android:id="@+id/buttonSend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Send"
android:layout_below="@id/editTextMessage"
android:onClick="sendEmail"/>

</RelativeLayout>

Mainactivity.java

package com.example.emailsender;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
EditText editTextTo, editTextSubject, editTextMessage;
@SuppressLint("MissingInflatedId")
@Override

10
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextTo = findViewById(R.id.editTextTo);
editTextSubject = findViewById(R.id.editTextSubject);
editTextMessage = findViewById(R.id.editTextMessage);
}

public void sendEmail(View view) {


String to = editTextTo.getText().toString();
String subject = editTextSubject.getText().toString();
String message = editTextMessage.getText().toString();
Intent emailIntent = new Intent(Intent.ACTION_SEND);
emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{to});
emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(Intent.EXTRA_TEXT, message);
emailIntent.setType("message/rfc822");
startActivity(Intent.createChooser(emailIntent, "Choose an Email client:"));
Intent intent=new Intent();
intent.setAction("com.fso.CUSTOM_INTENT");
sendBroadcast(intent);

}
For Receive email
MainActivity.java

package com.example.emailreceiver;
import androidx.appcompat.app.AppCompatActivity;
import android.content.IntentFilter;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
private GmailReceiver gml;
IntentFilter intf;
@Override
11
1
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gml = new GmailReceiver();
intf = new IntentFilter("com.fso.CUSTOM_INTENT");
}
private void registerReceiver(GmailReceiver gml, IntentFilter intf) {
}
}

GmailReceiver.java

package com.example.emailreceiver;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class GmailReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
Toast.makeText(context, "Email Received", Toast.LENGTH_LONG).show();
}
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
12
android:paddingTop="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
tools:context=".MainActivity">

</RelativeLayout>

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>


<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Emailreceiver"
tools:targetApi="31">

<activity
android:name=".MainActivity"
android:exported="true"

13
android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".GmailReceiver"
android:exported="true"
android:enabled="true">

<intent-filter>
<action android:name="com.fso.CUSTOM_INTENT">
</action>
</intent-filter>
</receiver>
</application>
</manifest>

14
Result Analysis

For Sending Email

Output:-

Fig1:- GUI of application with App Drawer

The above figure is a screenshot of a graphical user interface of an application(emailsender) running in Android
Studio. It shows various elements such as "Hi msg", "hello", "Send"Button after a button click the App Drawer
will Appear and can select appropriate app to share that text. The interface is related to messaging or sharing
functionality on a mobile device.

15
Fig2:- Interface showing the compose window of email application

Above figure is a graphical user interface showing a chat or text message being composed. The content includes
text, numbers, and letters arranged in a random manner. The figure is related to software development for an
sendemail application on Android, as indicated by the additional context.

16
For Receive Email Output:-

Fig3:- Interface of received email in inbox in email application

The above figure is a screenshot showing the graphical user interface of an email application on an Android
device. The screenshot displays an email received in the inbox with text messages "hello msg" and "HELLO!"
There are options to reply, reply all, and forward the email. The time of the received email is shown as 7:50
pm.

17
Application

1. Personal Email Management: Individuals can use the program to manage their personal email accounts,
sending and receiving emails from friends, family, and other contacts. They can organize their inbox, reply to
emails, and handle attachments efficiently.

2. Business Communication: Businesses can utilize the program for professional email communication,
sending messages to clients, partners, and colleagues. Features like contact management, email templates, and
attachment handling are beneficial for business correspondence.

3. Educational Institutions: Schools, colleges, and universities can leverage the program for academic
communication, such as sending announcements, assignments, and newsletters to students, faculty, and staff
members.

4. Customer Support: Companies can integrate the program into their customer support systems, allowing
agents to send and receive emails from customers, respond to inquiries, and track support tickets effectively.

5. Marketing Campaigns: Marketing teams can use the program to send promotional emails, newsletters, and
updates to subscribers, manage mailing lists, and track email campaign performance through analytics.

6. Remote Work Collaboration: Remote teams can communicate and collaborate using the program,
exchanging project updates, documents, and feedback via email. Integration with project management tools
can enhance workflow efficiency.

7. E-commerce Transactions: Online businesses can automate order confirmation emails, shipping
notifications, and customer service inquiries using the program, improving the overall customer experience.

18
Conclusion

In conclusion, the development of a program for sending and receiving emails is a valuable endeavor that offers
numerous benefits and applications across personal, professional, educational, and commercial domains. By
providing a user-friendly interface, essential features such as composing emails, managing contacts, handling
attachments, and integrating with email servers, the program facilitates efficient and effective email
communication.

The program's applications span from personal email management to business communication, customer
support, marketing campaigns, remote work collaboration, e-commerce transactions, event management, and
more. Its versatility and functionality make it an indispensable tool for individuals, organizations, and
institutions seeking to streamline their email communication processes.

Through systematic development methodologies, including requirement analysis, design, implementation,


testing, deployment, and maintenance, the program can be tailored to meet specific user needs, ensure security,
and adapt to evolving email standards and practices.

Overall, the program for sending and receiving emails contributes to improved communication, productivity,
collaboration, and customer satisfaction, making it a valuable asset in today's digital age.

19
References

 Email client application with rabbit algorithm for Android smart phone Muhammad Anwari
Leksono;Rinaldi Munir2012 7th International Conference on Telecommunication Systems, Services, and
Applications (TSSA)

 A Study of Email Encryption on Android OS March 2018 ,Authors:Ghasaq Abdulhussein University of


Babylon

 Tiltle of book:- Android PArogramming for Biginners, author:- Hortan,John, Publication:- Packet
Publication,2015,IBSN:-978-1-78588-326-2

 Tiltle of book:- Android , author:-Dixit,Prasanna Kumar, Publication:- Vikas Publications,New Delhi


2014, IBSN: 9789325977884

20

You might also like