Google Android developer Virtual Internship
Google Android Developer Virtual Internship
by
Pranitha Y
Roll No : 204G1A0572
Department of Computer Science and Engineering
Srinivasa Ramanujan Institute of Technology
Autonomous
Rotarypuram Village, B K Samudram Mandal, Ananthapuramu – 515701.
2023-2024
Google Android developer Virtual Internship
Contents
Introduction
Modules
Modules Explanation
Real-time Examples
Conclusion
References
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 2
Google Android developer Virtual Internship
Introduction
Google Central to Android's development is Google, offering core software, services,
and updates. The Google Play Store serves as the official app distribution platform,
granting users access to millions of applications. The user interface of Android is
tailored for touch gestures, featuring a customizable home screen and support for
widgets, ensuring an interactive and intuitive experience.
From Eduskills Foundation, AICTE launches a Virtual Internship on Google Android
Virtual Internship.
The main aim of this is to gain insights on Android applications
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 3
Google Android developer Virtual Internship
Modules
1. Your first Android app
2. Building App UI
3. Display lists and use Material Design
4. Navigation and app architecture
5. Connect to Internet
6. Data Persistence
7. Work Manager
8. Views and Compose
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 4
Google Android developer Virtual Internship
Your first Android app
Android Studio Installation
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 5
Google Android developer Virtual Internship
Your first Android app
The module describes about the android and requirements of android. The requirements
Kotlin programming language, setting up the android studio and describes building a
Kotlin, a modern and concise programming language, has emerged as a preferred choice
for Android app development. Endorsed by Google, Kotlin offers a seamless integration
with existing Java code and brings a host of features like null safety, concise syntax, and
improved code readability. Its expressive and pragmatic nature accelerates development,
making it an excellent fit for Android projects. As the official language for Android app
development since ces developer productivity, reduces boilerplate code, and contributes to
building robust, efficient, and more maintainable
Android applications Configuration of JDK & IDE
https://www.oracle.com/java/technologies/downloads/#jdk17-windows
https://developer.android.com/studioOperationsPerspective
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 6
Google Android developer Virtual Internship
Building App UI
The app is designed to compute tips based on user input, demonstrating fundamental principles of
user interface design and state management. Throughout the development process, we explore
techniques for capturing user input, dynamically updating the UI, and managing the application's
state to ensure a seamless and responsive user experience. By the end of this module, learners will
have gained valuable insights into creating interactive UIs and handling states, providing a solid
foundation for developing user-friendly applications.
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 7
Google Android developer Virtual Internship
Display lists and use Material Design
In this module, we explore the creation of an
app using Compose that showcases a
scrollable list containing both text and
images. By following the provided
guidelines, developers will gain hands-on
experience in leveraging Compose, a modern
Android UI toolkit, to design and implement
dynamic interfaces. The app's functionality
includes the seamless integration of text and
images within a scrollable layout,
demonstrating essential techniques for
creating engaging and visually appealing user
experiences. SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 8
Google Android developer Virtual Internship
Navigation and app architecture
This module provides nuanced insights into the hierarchical structure and design principles
conducive to an integrated user journey. Additionally, developers will gain profound
knowledge on the effective passing and management of data between screens, emphasizing
efficiency and maintaining a resilient architecture. This resource is tailored to help
developers master the advanced functionalities of the Navigation component, enabling the
creation of dynamic, interconnected applications that respond dynamically to user
interactions.
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 9
Google Android developer Virtual Internship
Connect to Internet
Connecting to the internet is a fundamental aspect of modern application
development, enabling communication between devices and servers. Here's a concise
overview of key concepts when establishing internet connections in software:
Network Permission: Declare the necessary network permissions in the
AndroidManifest.xml file. This is crucial for the app to access the internet. You
typically include the <uses-permission> element with appropriate permissions like
<uses-permission android:name="android.permission.INTERNET"/>. This permission
allows the app to create network sockets for sending and receiving data over the
internet.
Network Requests: Use either HTTP or HTTPS protocols to initiate network requests
from your application to remote servers. This is typically done using the following
methods:
HttpURLConnection: This is a basic API provided by Java for sending HTTP
requests and receiving responses. It's relatively low-level but offers fine-grained
control over the request and response process.
HttpClient: Historically, HttpClient was a commonly used library for sending HTTP
requests. However, it has been deprecated in recent Android versions in favor of newer
and more efficient APIs like HttpURLConnection or third-party libraries like OkHttp.
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 10
Google Android developer Virtual Internship
Data Persistence
Data persistence in software development refers to the process
of storing and retrieving data to and from a persistent storage medium,
such as a database or file system. It is a crucial aspect of creating robust
and user-friendly applications. There are several methods for achieving
data persistence in Android applications:
Structured Query Language:
SQL, or Structured Query Language, is a powerful domain-specific language designed for managing
and manipulating relational databases. It provides a standardized way to interact with databases,
allowing users to perform operations such as querying, updating, inserting,
and deleting data. SQL is used to define and manipulate the structure of relational databases, create and
modify tables, and retrieve information based on specified criteria.
Storing and Accessing Data Using Keys with DataStore
DataStore, a component of Android Jetpack, represents a contemporary approach to managing and
persisting key-value pairs, introducing a more robust and type-safe alternative to the traditional
SharedPreferences system. Operating on the foundational concept of key-value storage, DataStore
ensures that each piece of data is associated with a unique identifier, facilitating straightforward
retrieval and updates as needed
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 11
Google Android developer Virtual Internship
WorkManager
Google's Android WorkManager is a powerful API within the Android Jetpack library
designed to simplify and manage background tasks in Android applications. It addresses the
need for executing tasks that continue running even when the app is not in the foreground or
if the device restarts. Here's a brief summary of WorkManager's key features:
Background Task Management:
WorkManager allows developers to schedule and manage tasks that run in the background,
such as data syncing, periodic updates, or content downloads.
Persistent Execution:
Tasks scheduled with WorkManager persist across device reboots and app closures, ensuring
reliable execution even in challenging conditions.
Simplified API:
WorkManager provides a simplified and consistent API, abstracting away the complexity of
managing background tasks. It is built on top of existing Android background job
mechanisms, offering a unified approach.
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 12
Google Android developer Virtual Internship
Views and Compose
A View is a fundamental element for any user interface (or
design) in android. The View is a base class for all UI
components in android. For example, the EditText class is
used to accept the input from users in android apps, which is
a subclass of View.Following are the some of common View
subclasses that will be used in android applications.
•TextView
•EditText
•Button
•CheckBox
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 13
Google Android developer Virtual Internship
Real-time Examples
Ride-Sharing Apps (e.g., Uber, Lyft)
Food Delivery Apps (e.g., DoorDash, Grubhub)
Weather Apps with Real-Time Updates (e.g., AccuWeather)
Home Security Apps with Live Camera Feeds (e.g., Nest, Ring)
Emergency Services Apps (e.g., SOS Apps)
Health and Fitness Apps with GPS (e.g., Strava, Runkeeper)
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 14
Google Android developer Virtual Internship
Conclusion
Enrolling in Google's Android development course provides a concise yet
comprehensive journey into the world of mobile app creation. With Google's
expertise in developing the Android platform, learners can expect a focused
curriculum covering essential topics like programming languages, the Android
SDK, and API integration. The course's hands-on approach ensures a practical
understanding of building robust applications, aligning with industry standards.
Google's direct involvement assures access to up-to-date content, reflecting the
latest trends and tools in Android development. Completing this course not only
equips individuals with the skills necessary for app creation but also stands as a
valuable endorsement from a leading authority in the mobile technology
landscape
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 15
Google Android developer Virtual Internship
References
[1] https://developer.android.com/courses/android-basics-compose/course
[2]https://internship.aicte-india.org
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 16
Google Android developer Virtual Internship
Internship Certificate
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 17
Google Android developer Virtual Internship
Thank You!!!
SRINIVASA RAMANUJAN INSTITUTE OF
572 DEPT. OF COMPUTER SCIENCE AND ENGINEERING 18