Amit Internship
Amit Internship
SUMMARY REPORT
Submitted By
AMIT KUMAR VISHWAKARMA -
22SCSE1011445
I hereby certify that the work which is being presented in the Internship project
report entitled "GOOGLE AICTE Virtual Internship Program 2024 - VIRTUAL
INTERNSHIP PROGRAM IN ANDROID DEVELOPER" is in partial fulfilment of
the requirements for the award of the degree of Bachelor of Technology in
Computer Science Galgotias University, Greater Noida, is an authentic record
of my work carriedout in the industry.
To the best of my knowledge, the matter embodied in the project report has not
been submitted to any other University/Institute for the award of any Degree.
Amit Kumar(22SCSE1011445)
This is to certify that the above statement made by the candidate is correct and true
to the best of my knowledge.
Signature of Student
Amit
22SCSE1011445
TABLE OF CONTENTS
CHAPTER TITLE PAGE NO
Abstract
1. Introduction
2. Technical Description
3. Modules Leaning
4. System implementation
6. Appendices
7. References
Abstract
The main objective of this internship is to provide the students with the knowledge
and skills in the domain of Android developers and about studios tools.
The main objective of this internship (VIRTUAL INTERNSHIP PROGRAM IN
ANDROID DEVELOPER)
The main objectives of a virtual internship program in Android development are
likely to align with providing interns with practical experience, exposure to real-
world projects, and the opportunity to enhance their skills in Android app
development. While specific objectives can vary, here are some common goals for
such programs.
Hands-On Experience: The internship aims to provide interns with hands- on
experience in developing Android applications. This involves working on actual
projects, writing code, and gaining practical skills that are valuable in a
professional setting.
Skill Development: The program typically focuses on enhancing the technical
skills of interns in Android development. This includes proficiency in
programming languages such as Java or Kotlin, understanding the Android
framework, and learning about best practices in mobile app development.
Project Contribution: Interns may be assigned specific tasks or features within
ongoing projects. The goal is to contribute to the development of real-world
applications, providing a sense of accomplishment and a tangible addition to their
portfolio.
During the internship we got a project with the problem statement stating "Design
Secure network for your institution - Select your college or a building of your
college and study the network topology of the same and design the same using on
packet tracer tool (Please don't configure just design the network). Once done,
apply your learnings of Neta cad cyber security course to upgrade / secure the
existing network of your college" and we had to create this with the help of Cisco
Packet Tracer by applying the knowledge we gained from the course Introduction
to packet tracer.
1.2 Description of Domain: -
ANDROID DEVELOPMENT: -
The domain of Android development involves creating applications (apps) that run
on the Android operating system, which is primarily used in mobile devices such
as smartphones and tablets. Android development is a specialized field within
software development that focuses on building applications using the Android
platform, typically using programming languages like Java or Kotlin.
All of these roles can be part of the our work in the exciting system , ever-
changing high-demand of android applications.
1.3 A Brief Introduction about an Organization: -
All India Council for Technical Education (AICTE):
AICTE is a national-level apex advisory and regulatory body for technical
education in India. It operates under the Department of Higher Education, Ministry
of Education, Government of India. AICTE is responsible for planning and
coordinating technical education and management education in the country. It
plays a crucial role in formulating and implementing policies to ensure the quality
and relevance of technical education.
Google:
Google is a multinational technology company that specializes in internet-related
services and products. It is renowned for its search engine but has expanded its
portfolio to include a wide range of products and services, including Android, one
of the most widely used mobile operating systems in the world. Google is known
for its innovative approach to technology, and it actively supports educational
initiatives and programs to promote skill development in various fields, including
software development.
Objective: The internship program would likely aim to enhance the skills of
participants in Android development, preparing them for careers in software
development.
Mentorship: Interns may have the opportunity to work closely with experienced
mentors from Google or other partnering organizations, providing guidance and
support throughout the internship.
Modules Leaning
Unit 1: Your first Android app
Learn programming basics and create your first Android app.
Write simple Kotlin programs that display text output.
Download and install Android Studio.
Build an Android app with a simple user interface that displays text and
images.
Run the app on a device or emulator.
Build apps that display a list of data and learn how to make your apps more
beautiful with Material Design.
Use data classes, functions, and collections in Kotlin.
Create a scrollable list in an app that displays both text and images.
Add click listeners to interact with list items.
Add an app bar to the app and modify the app theme.
Use Material Design to build modern and intuitive user interfaces, using
colours, shapes and typography.
Unit 4: Navigation and app architecture
Learn the best practices of app architecture to build more complex apps. Enhance
your users' ability to navigate across, into and back out from the various screens
within your app for a consistent and predictable user experience.
Explain activities and their lifecycles.
Understand Modern Android architecture.
Use State Flow and UDF pattern to work with state and events.
Add a View Model to save data and state.
Set up and use the Navigation component with Compose.
Understand what responsive UI is.
Use window class sizes to build for different screen sizes.
Add a navigation drawer to an app.
Problem Statement: -
This project is to create a Weather Report application with a third-party server and users to
enable the users to Forecast Weather... The project should be very easy to use, enabling even a
novice person to use it. This application is also developed to make people’s life hustle free by
introducing some of the extraordinary features like Weather updates which are going on all
around the world and getting the weather forecast before going out of the home. This project is to
design an application which consists of all the basic features which the users can access with a
single click.
DESIGN OF PROJECT
1. LIST OF MODULES4.1.1 MODEL
A model stores data that is retrieved according to commands from the controller
and displayed in the view. Here the model module contains the four classes clouds,
current condition, place, weather, wind. Cloud class contains the data
of precipitation, current condition contains the data such as description, maximum,
minimum weather temperature, pressure, humidity, icon and condition. Place class
contains the data such as latitude, longitude, sunset, sunrise, country, city and last
updated data. Wind class contains the speed and degree of the wind. Weather class
contains the initialization of the other classes of place, cloud and wind so that we
don’t have to write the code in the main class.
2. DATA
Data modules contains the classes for downloading the JSON data from the api it
downloads the data and reads the data from the API and sets the data in model
module. This is the important module as the API is downloaded and read here. City
preferences class saves the default city, which is New Dehi, IN. Here the city is
saved in the memory of application. Json Weather object class reads the data from
API and sets the data to the model class. Weather HTTP client connects to the API
and downloads the data if API is not found then it will give the exceptions and will
tell the project that it cannot download the data.
3. UTILS
Utils module contains the link of the API and the link to download the icons for
the weather and it contains the code which converts the JSON to the datatype as it
is needed for example it converts the JSON object of string type to string and for
the same number to int and float value to float.
SCREENSHOT: -
Figure 1
Figure 2
CHAPTER 5
Android is the future of the world day by day its demand is getting
increased, and their users are increasing every day in numbers. As
android devices are increasing so the demand for the good applications
is also increasing day by day. Everyday new apps are launched in google
play store. “Android” Weather app” will get the four days forecasting
and some other features like it will be updated in every hour it’s user
interface will be changed. This app will check the pollution in the city.
Android is the future of the world day by day its demand is getting
increased, and their users are increasing every day in numbers. As
android devices are increasing so the demand for the good applications
is also increasing day by day. The project will be useful for checking the
weather of your city and for getting started in android for a person.
CHAPTER 6
Appendices
Strengths:
1. Accurate Weather Information: Providing accurate and reliable weather
forecasts will be a significant strength for the application, ensuring user trust
and satisfaction.
2. User-Friendly Interface: A simple and intuitive user interface will enhance
the user experience, making it easy for users to access and understand
weather information.
3. Multi-Platform Accessibility: Developing the application for multiple
platforms (iOS, Android, web) will increase its reach and cater to a broader
audience.
4. Real-Time Updates: Offering real-time weather updates will set the
application apart, making it more valuable for users who require up-to-the-
minute information.
5. Customization Options: Allowing users to customize their weather
preferences, such as location-based alerts and favorite locations, can enhance
the personalization of the app.
Weaknesses:
1. Dependence on External Data Sources: The application's accuracy is
highly dependent on the data it receives from external weather services. Any
disruptions in these data sources could affect the app's reliability.
2. Technical Issues: Potential technical glitches, such as server downtimes or
bugs in the application, could lead to user dissatisfaction and impact the
app's reputation.
3. Limited Geographic Coverage: If the application focuses on a specific
region or lacks global coverage, it may limit its appeal to users outside that
area.
4. Competition: The weather app market is competitive, and standing out from
established competitors may be a challenge.
5. Monetization Challenges: Determining a sustainable and user-friendly
monetization strategy without compromising the app's core user experience
can be challenging.
Opportunities:
1. Integration with Other Apps: Collaborating with other applications, such
as travel or event planning apps, can provide opportunities for cross-
promotion and enhanced user engagement.
2. Innovative Features: Adding unique features, such as weather-related
games, augmented reality experiences, or social sharing options, can attract
new users and set the app apart.
3. Global Expansion: Expanding the app's coverage to include more regions
globally can tap into new markets and increase the user base.
4. IoT Integration: Exploring integration with IoT devices, such as smart
home systems or wearables, can open up new possibilities for user
interaction and convenience.
5. Data Analytics: Leveraging user data for analytics can provide insights into
user behaviour, helping to improve the app and tailor features to user
preferences.
Threats:
1. Data Security Concerns: As the app deals with location data, ensuring
robust data security and privacy measures is crucial to avoid potential
breaches and legal issues.
2. Changing Technology Trends: Rapid advancements in technology may
make certain features or aspects of the app obsolete. Staying abreast of
technological changes is essential.
3. Weather Prediction Challenges: The inherent unpredictability of weather
patterns poses a threat to the app's accuracy, and any inaccuracies may lead
to user dissatisfaction.
4. Regulatory Changes: Changes in regulations related to data privacy or the
use of location-based services could impact the app's functionality and
compliance.
5. Negative User Reviews: Negative reviews or feedback, especially in the
early stages of the app, could harm its reputation and deter potential users.
CHAPTER 7
REFERENCES
https://developer.android.com/courses/android-basics-
compose/course