0% found this document useful (0 votes)
31 views26 pages

Mad Microprojet

The document outlines a micro-project titled 'Weather Application in Android' undertaken by students of the Information Technology department for the academic year 2024-2025. It includes details about the project's aims, methodology, resources required, and the course outcomes addressed, along with a structured action plan and a literature review. The project aims to develop a mobile application that provides real-time weather updates and forecasts, enhancing user engagement through various features.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views26 pages

Mad Microprojet

The document outlines a micro-project titled 'Weather Application in Android' undertaken by students of the Information Technology department for the academic year 2024-2025. It includes details about the project's aims, methodology, resources required, and the course outcomes addressed, along with a structured action plan and a literature review. The project aims to develop a mobile application that provides real-time weather updates and forecasts, enhancing user engagement through various features.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 26

Institute Code: 0141

Title of Micro project: Weather Application in Android

Academic Year: 2024-2025 Program Code:


CO Course: Mobile Application Development Course Code: 22617
Submitted by:
Roll No Student Name Batch Sign of Student

2505 CO-1
HARSHAD MUNDHE

2546 CO-II
SANKET SUPEKAR

2570 CO-III
TEJASWEE THORAT

2571 CO-III
SHARVARI WADEKAR

Under the Guidance of

Mrs.P.P.Bastawade
1
Certified that this micro-project report titled “Weather Application in Android” is the Bonafide work
of
1. Mr. Harshad Mundhe Roll No: 2505
2. Mr. Sanket Supekar Roll No: 2546
3. Mr. Tejaswee Thorat Roll No: 2570
4. Mr. Sharvari Wadekar Roll No: 2571
of Third year diploma in Information Technology for the Course,: Mobile Application Development
Course code: 22617 during the academic year 2024-25, who carried out the micro project work
under my supervision.

Mrs.P.P.Bastawade
Name & signature of Course Teacher
2
ACKNOWLEDGEMENT

We would like to express our special gratitude to our guide Mrs.P.P.Bastawade who gave us the golden
opportunity to do this wonderful micro project on the topic “Weather Application in Android” which
also helped us in doing experimentation to micro project and we came to know about so many new
things, we are really thankful to them. We would also like to thank our parents and colleagues who
helpedus a lot in finalizing this micro project within the limited time frame.

Roll No Name
2505 Harshad Mundhe
2546 Sanket Supekar
2570 Tejaswee Thorat
2571 Sharvari wadekar

3
ALL INDIA SHRI SHIVAJI MEMORIAL SOCIETY’S POLYTECHNIC, PUNE -1

INFORMATION TECHNOLOGY DEPARTMENT

VISION AND MISSION OF THE INSTITUTE

 VISION:

Achieve excellence in quality technical education by imparting knowledge,


skills and abilities to build a better technocrat.

 MISSION:

M1: Empower the students by inculcating various technical and soft skills.

M2: Upgrade teaching-learning process and industry-institute interaction.

VISION AND MISSION OF THE INFORMATION TECHNOLOGY DEPARTMENT

 Vision

“To enrich intellectual potential by imparting technical knowledge and skills to


become an IT professional”

 Mission

M1: To confer the technical education and skills required for IT field

M2: To imbibe social awareness in students to serve the society.

4
ALL INDIA SHRI SHIVAJI MEMORIAL SOCIETY’S POLYTECHNIC, PUNE -1

INFORMATION TECHNOLOGY DEPARTMENT


PROGRAM OUTCOMES (POs)
PO1 Basic and Discipline specific knowledge: Apply knowledge of basic
mathematics, science and engineering fundamentals and engineering
specialization to solve the engineering problems.
PO2 Problem analysis: Identify and analyze well-defined engineering problems
using codified standard methods.
PO3 Design/ development of solutions: Design solutions for well-defined technical
problems and assist with the design of systems components or processes to
meet specified needs.
PO4 Engineering Tools, Experimentation and Testing: Apply modern
engineering tools and appropriate technique to conduct standard tests and
measurements.

PO5 Engineering practices for society, sustainability and environment: Apply


appropriate technology in context of society, sustainability, environment and
ethical practices.
PO6 Project Mobile Application Development: Use engineering Mobile
Application Development principles individually, asa team member or a leader
to manage projects and effectively communicate about well-defined
engineering activities.
PO7 Life-long learning: Ability to Analize individual needs and engage in updating
in the context of technological changes.

PROGRAM SPEICIFIC OUTCOMES (POs)

The Diploma in Information Technology will prepare students to attain:


Students will be able to:
PSO 1: Use fundamental concepts of hardware and software systems.

PSO 2: Identify various career opportunities in IT field.

5
INDEX

Sr. No. Content Page No.

1. Annexure I 7-9

2. Annexure II 10 - 27

3. Annexure III 28 - 29

4. Log Book 33

5. Rubrics Used for Evaluation 34

6. Evaluation Sheet 35

6
Annexure-I
Micro-Project Proposal
Title of Micro-Project: Weather Application in Android
1.0 Aims/Benefits of the Micro-Project
Aim:-
The aim is to basic Mobile Application Development principles to execute daily activities. We Use
principles of
planning and organizing for accomplishment of tasks.
Benefits: -
Guide us to report the daily weather application that will helps us in day to day life.
2.0 Course Outcomes Addressed
CO22617.a:Interprete features of Android operating system.
CO22617.d:Use User Interface components for android using application deployment.
CO22617.e: Create Android Application using Database.
3.0 Proposed Methodology
1. Arrangement of groups and representatives for groups that are not usually represented as
partners in main projects.
2. Capacity building and networking in relation to the role as partners in micro
projects. 3.Collected materials related to project.
4.Support development of more need and user driven projects.
5.Contribute to the maximum requirements of project.
6. An eligible project idea addressing one of the four Priority Axes and a work plan for a
micro project including a description of how the capacity building and networking should
take place.
7. The project involves maximum five partners. From five partners, the contributions of micro
project are distributed.
8. An eligible Lead member who will guide the group members and analyzed the data.
9. Eligible match finding the proper
information. 10.Softcopy corrections by
respective teachers. 11.Completion of the micro
project properly.
12.Final copy and submission.
4.0 Action Plan

Sr. Details of Activity Planned Planned Name of Responsible


No. Start date Finish date Team Members
1. Introduction to Micro-project: Study for 08-01-25 08-01-25 All Members
selecting Micro project topic

2. Introduction to Micro-project: Discussion 15-01-25 15-01-25 All Members


about selected Micro project topic with
concerned Course Teacher
3. Introduction to Micro-project: Finalize 22-01-25 22-01-25 All Members
and Study for selected topic

11
4. Drafting Proposals 23-01-25 23-01-25 Harshad Mundhe
5. Proposal submission 29-01-25 29-01-25 All Members
6. Micro project Proposal Presentation 05-02-25 05-02-25 Harshad Mundhe
7. Making Changes in presentation, if 16-02-25 16-02-25 Sanket Supekar
suggested by concerned teacher
8 Executing Micro-Project: Study from 26-02-25 26-02-25 Sanket Supekar
different resources
9. Executing Micro-Project: Collect 01-03-25 01-03-25 All Members
information from studied resources
10. Executing Micro-Project: Arrange 04-03-25 04-03-25 Tejaswee Thorat
collected information
11. Executing Micro project 11-03-25 11-03-25 All Members
12. Drafting Methodology 15-03-25 15-03-25 Tejaswee Thorat
13. Drafting Literature Review 18-03-25 18-03-25 Tejaswee Thorat
14. Drafting Result, Discusser 22-03-25 22-03-25 Sharvari wadekar
15. Micro project Presentation 30-03-25 30-03-25 All Members
16. Micro Project final submission 01-04-25 01-04-25 All Members

5.0 Resources Required


Sr. Name of Specifications Qty. Remark
No. Resources/materi
al
1. Computer System Laptop i5 11th gen, RAM – 8GB 1
2. Operating System Windows 11 -
3. Printer - -
4. Internet/Websites 1. https://byjus.com/commerce/small-scale-industries
2. https://www.ssiregistrationcoimbatore.in/blog/features
-small-scale-industries/
3. https://www.vedantu.com/commerce/small-scale-
industries
4. https://www.toppr.com/guides/business-
environment/scales-of-business/role-of-ssi-in-the-
economy/
5. https://www.finline.in/resource/small-scale-industries/

Names of Team Members with Roll Nos.


Roll No Name
2505 Harshad Mundhe
2546 Sanket Supekar
2570 Tejaswee Thorat
2571 Sharvari Wadekar

(To be approved by the Concerned Teacher)


12
Annexure-II
Micro-Project Report
Title of Micro-Project : Weather Application in Android
1.0 Rational:
This app can offer real-time updates on current weather conditions and forecasts, tailored to users'
preferences in terms of units and locations. Beyond basic forecasts, the app can include features like
interactive maps, alerts for severe weather, and insights on UV index or air quality. With GPS
capabilities, the app can provide hyper-local forecasts based on the user's location, making it
particularly useful for travelers or outdoor enthusiasts. Moreover, integrating with other services like
calendars or offering customization options opens up opportunities for enhanced user engagement
and even monetization through ads or premium features. Additionally, the app can leverage data
analysis to improve predictions over time and foster a sense of community among users who share
weather information and experiences.
2.0 Aims/Benefits of the Micro-ProjectAim:-
The aim is to basic Mobile Application Development principles to execute daily activities. We Use
principles of
planning and organizing for accomplishment of tasks.
Benefits: -
Guide us to report the daily weather application that will helps us in day to day life.
3.0 Course Outcomes Addressed
CO22617.a:Interprete features of Android operating system.
CO22617.d:Use User Interface components for android using application deployment.
CO22617.e: Create Android Application using Database.
4.0 Literature Review:
1. https://byjus.com/commerce/small-scale-industries
2. https://www.ssiregistrationcoimbatore.in/blog/features-small-scale-industries/
3. https://www.vedantu.com/commerce/small-scale-industries
4. https://www.toppr.com/guides/business-environment/scales-of-business/role-of-ssi-in-
the-economy/
5. https://www.finline.in/resource/small-scale-industries/
5.0 Actual Methodology Followed
1. Finalize the Topic
2. Distribution of Work
3. Distribution of Topic
4. Collecting Images/Information
5. Starting animation
6. Completing animation
7. Creating a Word Document
8. Inserting information
9. Arranged the Information
10. Proofread the Information
11. Editing the Word Document
12. Review from the Teacher
13. Editing the Project Report as per Teacher’s suggestion
14. Proofread and Finalize the Report
15. Finalize the report
16. Final submission of the Report

6.0 Actual Resources Used

Sr. Name of Specifications Qty. Remark


No. Resources/materi al
1. Computer System Laptop i5 11th gen, RAM – 8GB 1
2. Operating System Windows 11 -
3. Printer - -
4. Internet/Websites 1. https://byjus.com/commerce/small-scale-industries
2. https://www.ssiregistrationcoimbatore.in/blog/
feature s-small-scale-industries/
3. https://www.vedantu.com/commerce/small-
scale- industries
7.0 Outputs of Micro-Project:

CODE-
XML FILE:

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


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:padding="20dp">

<EditText
android:id="@+id/etCity"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter city name"
android:inputType="text"
android:padding="10dp"/>

<Button
android:id="@+id/btnGetWeather"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Get Weather"/>

<TextView
android:id="@+id/tvWeather"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Weather Info"
android:textSize="18sp"
android:gravity="center"
android:padding="20dp"/>
</LinearLayout>

MainActvity.java

package com.xxy.weatherapp;

import static com.xxy.weatherapp.location.CityFinder.getCityNameUsingNetwork; import


static com.xxy.weatherapp.location.CityFinder.setLongitudeLatitude;
import static com.xxy.weatherapp.network.InternetConnectivity.isInternetConnected;

import android.Manifest;
import android.annotation.SuppressLint; import
android.app.Activity;
import android.content.Intent;
import android.content.IntentSender;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
import android.speech.RecognizerIntent; import
android.util.Log;
import android.view.View;
import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.InputMethodManager;

import androidx.annotation.NonNull;

import androidx.annotation.Nullable;
importandroidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.JsonObjectRequest; import
com.android.volley.toolbox.Volley;
import com.aniketjain.weatherapp.adapter.DaysAdapter;
import com.aniketjain.weatherapp.databinding.ActivityHomeBinding;
import com.aniketjain.weatherapp.location.LocationCord;
import com.aniketjain.weatherapp.toast.Toaster;
import com.aniketjain.weatherapp.update.UpdateUI;
import com.aniketjain.weatherapp.url.URL;

import com.google.android.gms.location.FusedLocationProviderClient;
import com.google.android.gms.location.LocationServices;
import com.google.android.play.core.appupdate.AppUpdateInfo; import
com.google.android.play.core.appupdate.AppUpdateManager;
import com.google.android.play.core.appupdate.AppUpdateManagerFactory; import
com.google.android.play.core.install.model.AppUpdateType;
import com.google.android.play.core.install.model.UpdateAvailability;
import com.google.android.play.core.tasks.Task;
import org.json.JSONException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date; import java.util.Locale; import java.util.Objects;

public class HomeActivity extends AppCompatActivity {

private final int WEATHER_FORECAST_APP_UPDATE_REQ_CODE = 101; // for app update


private static final int PERMISSION_CODE = 1; // for user location permission
private String name, updated_at, description, temperature, min_temperature, max_temperature,
pressure, wind_speed, humidity;
private int condition;
private long update_time, sunset, sunrise;
private String city = "";
private final int REQUEST_CODE_EXTRA_INPUT = 101;
private ActivityHomeBinding binding;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

// binding
binding = ActivityHomeBinding.inflate(getLayoutInflater()); View
view = binding.getRoot();
setContentView(view);

// set navigation bar color


setNavigationBarColor();

//check for new app update checkUpdate();

// set refresh color schemes


setRefreshLayoutColor();

// when user do search and refresh


listeners();

// getting data using internet connection


getDataUsingNetwork();

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data)
{ super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_CODE_EXTRA_INPUT)
{ if (resultCode == RESULT_OK && data != null) {
ArrayList<String> arrayList =
data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
binding.layout.cityEt.setText(Objects.requireNonNull(arrayList).get(0).toUpperCase());
searchCity(binding.layout.cityEt.getText().toString());
}
}
}

private void setNavigationBarColor() {


if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getWindow().setNavigationBarColor(getResources().getColor(R.color.navBarColor));
}
}
private void setUpDaysRecyclerView() {
DaysAdapter daysAdapter = new DaysAdapter(this);
binding.dayRv.setLayoutManager(
new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false)
);
binding.dayRv.setAdapter(daysAdapter);
}

@SuppressLint("ClickableViewAccessibility") private
void listeners() {
binding.layout.mainLayout.setOnTouchListener((view, motionEvent) -> {
hideKeyboard(view);
return false;
});
binding.layout.searchBarIv.setOnClickListener(view ->
searchCity(binding.layout.cityEt.getText().toString()));
binding.layout.searchBarIv.setOnTouchListener((view, motionEvent) -> {
hideKeyboard(view);
return false;
});
binding.layout.cityEt.setOnEditorActionListener((textView, i, keyEvent) ->
{ if (i == EditorInfo.IME_ACTION_GO) {
searchCity(binding.layout.cityEt.getText().toString());
hideKeyboard(textView);
return true;
}
return false;
});
binding.layout.cityEt.setOnFocusChangeListener((view, b) ->
{ if (!b) {
hideKeyboard(view);
}
});
binding.mainRefreshLayout.setOnRefreshListener(() -> {
checkConnection();
Log.i("refresh", "Refresh Done."); binding.mainRefreshLayout.setRefreshing(false);
//for the next time
});
//Mic Search binding.layout.micSearchId.setOnClickListener(view -
>{
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, Locale.getDefault());
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, REQUEST_CODE_EXTRA_INPUT); try
{
//it was deprecated but still work
startActivityForResult(intent, REQUEST_CODE_EXTRA_INPUT);
} catch (Exception e) {
Log.d("Error Voice", "Mic Error: " + e);
}
});
}

private void setRefreshLayoutColor() {


binding.mainRefreshLayout.setProgressBackgroundColorSchemeColor(
getResources().getColor(R.color.textColor)
);
binding.mainRefreshLayout.setColorSchemeColors( getResources().getColor(R.color.navBar
Color)
);
}

private void searchCity(String cityName) {


if (cityName == null || cityName.isEmpty())
{ Toaster.errorToast(this, "Please enter the city
name");
} else {
setLatitudeLongitudeUsingCity(cityName);
}
}

private void getDataUsingNetwork() {


FusedLocationProviderClient client = LocationServices.getFusedLocationProviderClient(this);
//check permission
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_COARSE_LOCATION) !=
PackageManager.PERMISSION_GRANTED)
{ ActivityCompat.requestPermissions(this, new
String[]{Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION}, PERMISSION_CODE);
} else {
client.getLastLocation().addOnSuccessListener(location -> {
setLongitudeLatitude(location);
city = getCityNameUsingNetwork(this, location);
getTodayWeatherInfo(city);
});
}
}
private void setLatitudeLongitudeUsingCity(String cityName) {
URL.setCity_url(cityName);
RequestQueue requestQueue = Volley.newRequestQueue(HomeActivity.this);
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET,
URL.getCity_url(), null, response ->
{ try {
LocationCord.lat = response.getJSONObject("coord").getString("lat");
LocationCord.lon = response.getJSONObject("coord").getString("lon");
getTodayWeatherInfo(cityName);
// After the successfully city search the cityEt(editText) is Empty.
binding.layout.cityEt.setText("");
} catch (JSONException e) {
e.printStackTrace();
}
}, error -> Toaster.errorToast(this, "Please enter the correct city name"));
requestQueue.add(jsonObjectRequest);
}

@SuppressLint("DefaultLocale")
private void getTodayWeatherInfo(String name)
{ URL url = new URL();
RequestQueue requestQueue = Volley.newRequestQueue(this);
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET,
url.getLink(), null, response -> {

try {
this.name = name;
update_time = response.getJSONObject("current").getLong("dt");
updated_at = new SimpleDateFormat("EEEE hh:mm a", Locale.ENGLISH).format(new
Date(update_time * 1000));

condition =
response.getJSONArray("daily").getJSONObject(0).getJSONArray("weather").getJSONObject(0).getIn
t("id");
sunrise = response.getJSONArray("daily").getJSONObject(0).getLong("sunrise"); sunset
= response.getJSONArray("daily").getJSONObject(0).getLong("sunset"); description
=
response.getJSONObject("current").getJSONArray("weather").getJSONObject(0).getString("main");

temperature =
String.valueOf(Math.round(response.getJSONObject("current").getDouble("temp") - 273.15));
min_temperature = String.format("%.0f",
response.getJSONArray("daily").getJSONObject(0).getJSONObject("temp").getDouble("min") -
273.15);
max_temperature =
String.format("%.0f",response.getJSONArray("daily").getJSONObject(0).getJSONObject
("temp").getDouble("max") - 273.15);
pressure = response.getJSONArray("daily").getJSONObject(0).getString("pressure"); wind_speed
= response.getJSONArray("daily").getJSONObject(0).getString("wind_speed"); humidity =
response.getJSONArray("daily").getJSONObject(0).getString("humidity");

updateUI(); hideProgressBar();
setUpDaysRecyclerView();
} catch (JSONException e) {
e.printStackTrace();
}
}, null);
requestQueue.add(jsonObjectRequest);
Log.i("json_req", "Day 0");
}

@SuppressLint("SetTextI18n")
private void updateUI() {
binding.layout.nameTv.setText(name); updated_at =
translate(updated_at);
binding.layout.updatedAtTv.setText(updated_at);
binding.layout.conditionIv.setImageResource(
getResources().getIdentifier(
UpdateUI.getIconID(condition, update_time, sunrise, sunset),
"drawable",
getPackageName()
));
binding.layout.conditionDescTv.setText(description);
binding.layout.tempTv.setText(temperature + "°C");
binding.layout.minTempTv.setText(min_temperature + "°C");
binding.layout.maxTempTv.setText(max_temperature + "°C");
binding.layout.pressureTv.setText(pressure + " mb");
binding.layout.windTv.setText(wind_speed + " km/h");
binding.layout.humidityTv.setText(humidity + "%");
}

private String translate(String dayToTranslate) {


String[] dayToTranslateSplit = dayToTranslate.split(" ");
dayToTranslateSplit[0] = UpdateUI.TranslateDay(dayToTranslateSplit[0].trim(),
getApplicationContext());
return dayToTranslateSplit[0].concat(" " + dayToTranslateSplit[1]);
}

private void hideProgressBar() {


binding.progress.setVisibility(View.GONE);
binding.layout.mainLayout.setVisibility(View.VISIBLE);
}

private void hideMainLayout() {


binding.progress.setVisibility(View.VISIBLE);
binding.layout.mainLayout.setVisibility(View.GONE);
}

private void hideKeyboard(View view) {


InputMethodManager inputMethodManager = (InputMethodManager)
view.getContext().getSystemService(Activity.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0);
}

private void checkConnection()


{ if (!isInternetConnected(this))
{
hideMainLayout();
Toaster.errorToast(this, "Please check your internet connection");
} else {
hideProgressBar();
getDataUsingNetwork();
}
}

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions,
@NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults); if
(requestCode == PERMISSION_CODE) {
if (grantResults.length > 0 && grantResults[0] ==
PackageManager.PERMISSION_GRANTED) {
Toaster.successToast(this, "Permission Granted");
getDataUsingNetwork();
} else {
Toaster.errorToast(this, "Permission Denied"); finish();
}
}
}

@Override
protected void onResume() {
super.onResume();
checkConnection();}

private void checkUpdate() {


AppUpdateManager appUpdateManager = AppUpdateManagerFactory.create(HomeActivity.this);
Task<AppUpdateInfo> appUpdateInfoTask = appUpdateManager.getAppUpdateInfo();
appUpdateInfoTask.addOnSuccessListener(appUpdateInfo -> {
if (appUpdateInfo.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE
&& appUpdateInfo.isUpdateTypeAllowed(AppUpdateType.IMMEDIATE)) {
try {
appUpdateManager.startUpdateFlowForResult(appUpdateInfo,
AppUpdateType.IMMEDIATE, HomeActivity.this,
WEATHER_FORECAST_APP_UPDATE_REQ_CODE);
} catch (IntentSender.SendIntentException exception)
{ Toaster.errorToast(this, "Update Failed");
}
}
});
}

OUTPUT-
8.0 Skill Developed/Learning outcome of this Micro-Project
1. To Complete work in time.
2. To learn new things.
3. how to collect and edit information to make report
9.0 Applications of this Micro-Project
We Use basic Mobile Application Development principles to execute daily activities. We
Use principles of planning and organizing for accomplishment of tasks. Small scale
industries are important because it helps in increasing employment and economic
development of India. It improvesthe growth of the country by increasing urban and rural
growth. The industry is a sector in which the production of goods is a segment of the
economy.

(To be evaluated by the Concerned Teacher)


Annexure - III
Rubric for Assessment of Micro Project
S. Characteristics to Poor Average Good Excellent
No be assessed (Marks 1-3) (Marks 4-5) (Marks 6-8) (Marks 9-10)
1. Relevance to the Related to very Related to some Addressed at- Addressed more
Course few LOs Los least one CO than one CO
2. Literature Not more than two At-least 5 At-least 7 About 10
Review/information sources (Primary relevant sources, relevant sources, relevant sources,
collection and Secondary), at least 2 latest most latest most latest
very old reference
3. Completion of Completed less Completed 50 to Completed 60 to Completed more
Target as per than 50% 60% 80% than 80%
Project proposal
4. Analysis of Data Sample Size all, Sufficient and Sufficient and Enough data
and representation data neither appropriate appropriate collected by
organized nor sample, enough sample, enough sufficient and
presented well data generated but data generated appropriate
not organized and which is sample size.
not well presented organized and Proper inferences
well. No or poor presented well. drawn by
inferences drawn But poor organizing and
inferences presenting data
drawn through tables,
charts and graphs
5. Quality of Incomplete Just assembled/ Well a Just Well a Just
prototype/Model fabrication/ fabricated and assembled/ assembled/
assembly parts are not fabricated with fabricated with
functioning well. proper proper
Not in proper functioning functioning
shape, dimensions parts.in proper parts.in proper
beyond tolerance shape, within shape, within
limit. tolerance tolerance
Appearance/ dimensions and dimensions and
finish is shabby. good finish. But good finish/
no creativity in appearance.
design and use Creativity in
of material design and use of
material.
6. Report Preparation Very short, poor Nearly sufficient Detailed, correct Very detailed,
quality sketches, and correct details and clear correct, clear
Details about about methods, description of description of
methods, materials, methods, methods,
materials, precautions and materials, materials,
Precautions and conclusion. but precautions and precautions and
Conclusions clarity is not there conclusion. conclusion.
omitted, some in presentation. Sufficient Enough tables,
details are wrong. But not enough graphic charts and
graphic description sketches
description
7. Presentation of Major information Includes major Includes major Well organized,
the Micro-Project is not included, information but information but Includes major
information is not not well not well information,
well organized. organized not organized not presented well.
presented well. presented well.

8. Viva Could not reply to Replied to Replied properly Replied most


considerable considerable considerable of the questions
number of number of number of properly
question questions nut not question.
very properly
Log Book of the Student (Hourly Work Report)
Academic Year: 2024-2025
Title of the Project: Weather Application in Android
Course: : Mobile Application Development Course Code: 22617
Semester: 6

Sr. No./ Date Time Work Done


Hour No.

1. 08-01-25 10:30-12:30 Group Discussion on Topic

2. 15-01-25 2:00-4:00 Assign task to group

3. 22-01-25 8:15-10:15 Giving Particular Information

4. 23-01-25 2:00-4:00 Get some Course Outcomes and Practical


Outcomes
5. 29-01-25 10:30-12:30 Taking Review about collected Data

6. 05-02-25 8:15-10:15 Verify Material in Sequence

7. 16-02-25 11:00-12:30 Discussion on Suggestions

8. 26-02-25 2:00-4:00 Arrange Data in Sequence

9. 01-03-25 10:30-12:30 Prepare proposal of the project

10. 04-03-25 8:15-10:15 Verify the Draft from Teacher

11. 11-03-25 11:00-12:30 Rearrange the data

12. 15-03-25 8:15-10:15 Share Data among Group

13. 18-03-25 10:30-12:30 Prepare the report

14. 22-03-25 2:00-4:00 Work on Data

15. 30-03-25 11:00-12:30 Prepare soft copy

16. 01-04-25 10:30-12:30 Submission

(Name & Signature of Faculty)

30
AISSMS’s Polytechnic, Pune- 01(0141)
Annexure IV: Rubrics Used for Evaluation of a Micro Project
Program/Semester /Master: CO-6I Course/Course code: MGT (22617) Group No.:1
Title of the Micro project: Weather Application in Android
Course Outcome Achieved:
CO22617.a:Interprete features of Android operating system.
CO22617.d:Use User Interface components for android using application deployment.
CO22617.e: Create Android Application using Database.
Assessment of micro project based on rubrics for performance in group activity :( Marks to be
given out of 06 Assessment of performance in individual presentation/Viva of micro project:
(Marks to be given out of 04. Scale used for assessment: Poor (1-3), Average (4-5), Good (6-8),
Excellent (9-10)
A) Process and Product Assessment (A):
Rubric
Characteristics to be assessed Marks Obtained out of 10
No.
1 Relevance to course
2 Literature review/information collection
3 Completion of target as per project proposal
4 Analysis of data and representation
5 Quality of prototype/model
6 Report Preparation
Total Out of (60)
Process and Product Assessment (A) :Total Out of (06)
B) Individual Presentation/Viva(B)
Rubric Individual
Rubric 7 Individual
8 Presentatio
Presentati
n/Viva
on/Viva
(Convert Total
Individual Individ (Addition
out of 08 (A+B)
Roll Enrollment Presentation ual of marks
marks into
No. No. Name of Student Viva in Rubric
out of 4)
7 to 8)
(B)
Marks Mark
Marks out Marks out Marks out
out of s out
of 10 of 20 of 04
10 of 10
2304 2101410300 Ram Belitkar

2305 2101410595 Shubham Bhosale

2306 2101410596 Onkar Dharmsale

Mrs.P.P.Bastawade

Name & Signature of Faculty

31
Evaluation Sheet for the Micro Project
Academic Year: 2024-2025 Name of Faculty :Mrs.P.P.Bastawade
Course: Mobile Application Development Course Code:22617 Semester: 6
Title of the Project: “Weather Application in Android”
CO’s addressed by the Micro Project:
CO22617.a:Interprete features of Android operating system.
CO22617.d:Use User Interface components for android using application deployment.
CO22617.e: Create Android Application using Database.
Major Learning Outcomes achieved by students by doing the project:
(a)Practical Outcomes:
PO2.Instal and Configure Java developmentkit(JDK),androidstudio nad android SDK.
PO3.Configure android development tools(ADT) plug-in and create android virtual device.
PO6.Deevlop a program to implement frame layout,table layout and relative layout.
PO7.Develop a program to implement TextView and EditView.
PO10 Develop a Program to implement AutoComplete TextView.
PO18.Develop a program to implement new activity using explicit intent and implicit
intent. PO21.Develop a program to implement broadcast receiver.
(b) Unit Outcomes in Cognitive domain:
1a.explain the given basic terms realted to android system
1c.Identify tools and software required for development the given android application with justification.
4a.Develop rich user interfaces for the given directory structure.
4b.Develop Android application using the given view.
5a.Develop programs to play the given multimedia.
5b.Use Fragments to generate the given multiple activities.
5d.Write the query to perform the given database management operations
(c) Outcomes in Affective Domain:
1) Follow safety practices.
2) Practice good housekeeping.
3) Demonstrate working as a leader/a team member.
4) Follow ethical practices
Comments/Suggestions about team work/leadership/inter-personal communication (if
any)

Roll No. Student Name Marks out of (6) Marks out of Total out
for performance (4) for of (10)
in group activity performance in
oral / presentation
2505 Harshad Mundhe

2546 Sanket Supekar

2570 Tejaswee Thorat

2571 Sharvari wadekar

Ms.P.P.Bastawade

Name & signature of


Faculty
32

You might also like