Google Android Intership
Google Android Intership
Cybersecurity
Bachelor of technology
In
Computer Science & Engineering
by
SRAVANA KUMAR NAMPALLI
Reg. NO 21H71A05I0
OFFERED BY
AICTE- EDUSKILLS-AWSACADEMY
March 2025
i
CERTIFICATE
This is to certify that the Internship Report entitled “Google Android Developer
& Palo Alto Cybersecurity Internship” submitted by Sravana Kumar.
NAMPALLI(21H71A05I0), to the DVR & Dr. HS MIC College of Technology
in partial fulfillment of the requirements for the award of the Degree of Bachelor
of Technology in Computer Science & Engineering is a bonafide record of
work.
Examiner 1 Examiner 2
ii
Certificate of Internship:
iii
iv
v
ACKNOWLEDGEMENT
The satisfaction that accompanies the successful completion of any task would
be incomplete without the mention of the people who made it possible and whose
constant guidance and engagement crown all the efforts with success. I thank our
college management and respected Sri D. PANDURANGA RAO, CEO for
providing us the necessary infrastructure to carry out the Internship.
I express my sincere thanks to Dr. T. Vamsee Kiran, Principal who has been a
great source of inspiration and motivation for the internship program.
I take this opportunity to express our thanks to one and all who directly or
indirectly helped me in bringing this effort to present form.
Finally, my special thanks go to my family for their continuous support and help
throughout and for their continual support and encouragement for the completion
of the Internship on time.
vi
ABSTRACT
The All India Council for Technical Education (AICTE) has partnered with
Google for Developers to offer a virtual internship program on Android
Application Development. The program is designed to help students develop the
skills they need to become Android developers and to prepare them for the
workforce.
The program will be delivered with edtech company India Edu Program
Educational Services Pvt.Ltd through their career readlines platform-India Edu
Program.
The program is a great opportunity for students to learn how to develop Android
apps and to gain valuable industry experience.
1 Introduction 1
2.4. Networking 8
3 Badges Earned 12
4 Cybersecurity Networks 14
Operations Centre)
5 Conclusion 26
viii
1.INTRODUCTION
There are many reasons why Android development is a popular choice for
developers. Some of the most common reasons include:
1
Introduction Palo Alto Networks
2
2.ANDROID DEVELOPMENT MODULES
3. Configure Android Studio: Launch Android Studio and follow the setup
wizard to configure the IDE. You'll need to choose a default installation
location, create an AVD (Android Virtual Device), and accept the
licensing agreements.
3
from Android Studio and install the latest version of the Android SDK
Platform and Build-Tools.
Activity Lifecycles:
The Android activity lifecycle refers to the different states that an activity can
transition through during its lifespan, from its creation to its destruction. Each
state represents a specific phase in the activity's existence, and it triggers
corresponding callback methods that developers can implement to manage the
activity's behaviour accordingly.
5
The Core Activity Lifecycle States:
1. onCreate( ) This method is called when the activity is first created. It's
the starting point for the activity's lifecycle, where developers initialize
the activity's components, set up its layout, and perform initial data
loading.
2. onStart( ) This method is called when the activity is about to become
visible to the user. The activity is not yet interacting with the user at this
stage, but it is ready to receive user input and perform actions.
3. onResume( ) This method is called when the activity becomes visible
to the user and starts interacting with them. It's the primary state where
the activity is actively responding to user interactions, handling events,
and updating the UI.
4. onPause( ) This method is called when the activity is partially obscured
by another activity or when it loses focus due to user actions, such as
pressing the back button or switching to a different app. The activity is
still partially visible, but it's no longer the primary focus.
5. onStop() This method is called when the activity is completely hidden
from the user's view. The activity is no longer visible or interacting with
the user, and it may be temporarily destroyed to conserve system
resources.
6. onDestroy() This method is called when the activity is finally destroyed
and removed from memory. All resources associated with the activity
are released, and the activity's lifecycle comes to an end.
6
2.3 User Interface(UI)
The user interface (UI) is a crucial aspect of any Android application, as it serves
as the primary point of interaction between the app and its users. A well-designed
UI can enhance the user experience, making the app intuitive, easy to use, and
enjoyable to interact with. Key Principles of Android UI Design
1. Material Design: Android follows the Material Design guidelines, a
comprehensive set of principles for creating user interfaces that are
appealing, consistent, and functional across various Android devices.
These guidelines provide recommendations for layout, typography,
colour palettes, and animation, ensuring a cohesive user experience.
2. User-Centered Design: Prioritize the user's needs and preferences
throughout the design process. Understand how users will interact
with the app, identify their goals, and design the UI accordingly.
Conduct user testing to gather feedback and refine the UI based on
real-world usage.
3. Simplicity and Clarity: Strive for a simple and uncluttered UI that is
easy to navigate and understand. Avoid overwhelming users with too
many options or complex layouts. Use clear and consistent labels,
icons, and visual cues to guide users through the app.
4. Consistency and Predictability: Maintain consistency in UI
elements, layout patterns, and interactions across different screens and
functionalities within the app. This consistency creates a sense of
familiarity and predictability for users, enhancing their overall
experience.
5. Responsiveness and Performance: Ensure that the UI responds
promptly to user interactions and provides smooth performance across
various Android devices. Optimize UI elements, use efficient code,
and consider device capabilities to ensure a seamless user experience.
7
2.4. Networking
Networking is an essential aspect of Android development, as it enables
applications to communicate with remote servers, fetch data from the internet,
and perform tasks that require accessing resources beyond the device itself.
Android provides various tools and libraries to handle network operations
efficiently and securely. Core Networking Concepts in Android
1. HTTP (Hypertext Transfer Protocol): HTTP is the foundation of
web communication, defining how data is exchanged between web
servers and clients. Android applications use HTTP to send and receive
data from servers, enabling them to access web content, perform
authentication, and exchange information.
2. Sockets: Sockets provide a low-level mechanism for establishing
direct network connections between devices. Android applications can
use sockets for specialized communication scenarios, such as peer-to-
peer communication or real-time data streaming.
3. Networking Libraries: Android offers various networking libraries,
such as Ok-Http and Volley, which simplify and streamline network
operations. These libraries provide higher-level abstractions for
making HTTP requests, handling responses, and managing network
connectivity.
4. Asynchronous Networking: Network operations are typically
performed asynchronously, meaning they don't block the main thread
and allow the application to remain responsive while waiting for
network responses. This ensures a smooth user experience and
prevents the app from freezing while waiting for network data.
5. JSON (JavaScript Object Notation): JSON is a lightweight data-
interchange format commonly used for exchanging data between web
applications. Android applications often use JSON to parse and
interpret data retrieved from servers, allowing them to extract.
8
2.5. Debugging And Testing
Debugging : Debugging is an essential part of the development process,
especially when it comes to Android development. It involves identifying and
resolving issues that arise during the development or testing of an Android
application. Effective debugging helps ensure that the app functions as intended,
providing a smooth and bug-free experience for users.
9
Testing : Testing is an integral part of the software development process, and
Android development is no exception. Testing ensures that Android applications
function as intended, meet user expectations, and are free from defects. A
comprehensive testing strategy involves different types of testing to cover
various aspects of the application.
10
2.6. Deploying The App
Deploying an Android application involves the process of making the app
available to users, either through the Google Play Store or other distribution
channels. It encompasses several steps, including preparing the app for
deployment, building the app for release, and publishing it to the target platform.
Preparation for Deployment:
1. Signing the App: App signing involves using a digital certificate to sign
the app's release-ready APK (Android Package) file. This ensures the
app's authenticity and integrity, preventing unauthorized modifications
or distribution.
2. Versioning: Assign a version number to the app, which helps track
different releases and identify the current version installed on users'
devices.
3. Release Notes: Prepare release notes that outline the changes made in
the new version, bug fixes, and any important information for users.
4. Proguard Configuration: Configure Proguard, a code obfuscation
tool, to optimize the app's release build, reducing its size and improving
performance.
11
3.BADGES EARNED
12
13
4.Cybersecurity Networks
• Introduction to Cybersecurity
• Fundamentals of Network Security
• Fundamentals of Cloud Security
• The Fundamentals of SOC (Security Operations Centre)
14
In the introduction to cybersecurity, we learn 5 types. They are
• Cybersecurity Landscape
• Cyberattack Types
• Cyberattack Techniques
• APTs and Wi-Fi Vulnerabilities
• Security Models
Cybersecurity Landscape
The nature of enterprise computing has changed dramatically over the past
decade. It changes to the web 2.0 to web 3.0. The vision of Web 3.0 is to return
the power of the internet to individual users, in much the same way that the
original Web 1.0 was envisioned. To some extent, Web 2.0 has become shaped
and characterized, if not controlled, by governments and large corporations
dictating the content that is made available to individuals and raising many
concerns about individual security, privacy, and liberty. In web 3.0, we have AI
and Machine Learning, Blockchain, Data Mining, Mixed Reality, and Natural
Language Search.
Introduction to SaaS
15
challenges emerge for organizations that permit SaaS use in their networks. With
SaaS applications, data is often stored where the application resides – in the cloud.
Thus, the data is no longer under the organization’s control, and visibility is often
lost. SaaS vendors do their best to protect the data in their applications, but it is
ultimately not their responsibility. Just as in any other part of the network, the IT
team is responsible for protecting and controlling the data, regardless of its
location.
The average employee uses at least eight applications. As employees add and use
more SaaS apps that connect to the corporate network, the risk of sensitive data
being stolen, exposed or compromised increases. It is important to consider the
security of the apps, what data they have 5 access to, and how employees are
using them. Because of the nature of SaaS applications, their use is very difficult
to control – or have visibility into – after the data leaves the network perimeter.
This lack of control presents a significant security challenge: End users are now
acting as their own “shadow” IT department, with control over the SaaS
applications they use and how they use them. Click the arrows for more
information about the inherent data exposure and threat insertion risks of SaaS.
In SaaS is used Malicious Outsiders, Malicious Insiders, Accidental Data
Exposure, Accidental Share, Promiscuous Share, and Ghost Share.
16
Attacker Profiles
News outlets are usually quick to showcase high-profile attacks, but the sources
of these attacks are not always easy to identify. Each of the different attacker types
or profiles generally has a specific motivation for the attacksthey generate. Here
are some traditional attacker profile types. Because these different attacker
profiles have different motivations, information security professionals must
design cybersecurity defenses that can identify the different attacker motivations
and apply appropriate deterrents. Click the arrows for more information about the
profile type of each attacker.
Cyberattack Types
Attackers use a variety of techniques and attack types to achieve their objectives.
Malware and exploits are integral to the modern cyberattack strategy. This lesson
describes the different malware types and properties, the relationship between
vulnerabilities and exploits, and how modern malware plays a central role in a
coordinated attack against a target. This lesson also explains the timeline for
eliminating a vulnerability.
17
Malware
Malware usually has one or more of the following objectives: to provide a remote
control for an attacker to use an infected machine, to send spam from the infected
machine to unsuspecting targets, to investigate the infected user’s local network,
and to steal sensitive data. Malware is varied in type and capabilities. Let us
review several malware types those are Logic Bombs, Rootkits, Backdoors, Anti-
AV, etc….
Ransomware
Cyberattack Techniques
Attackers use a variety of techniques and attack types to achieve their objectives.
Spamming and phishing are commonly employed techniques to deliver malware
and exploits to an endpoint via an email executable or a web link to a malicious
website. Once an endpoint is compromised, an attacker typically installs back
doors, remote access Trojans (RATs), and other malware to ensure persistence.
This lesson describes spamming and phishing techniques, how bots and botnet’s
function, and the different types of botnets.
18
Phishing Attacks
We often think of spamming and phishing as the same thing, but they are separate
processes, and they each require mitigations and defenses. Phishing attacks, in
contrast to spam, are becoming more sophisticated and difficult to identify. In
phishing attacks there are some types those are Spear Phishing, Whaling,
Watering Hole, and Pharming.
19
Security Models
This can be a complicated process, as every security model will have its
customizations, and many variables need to be identified. This lesson describes
the core concepts of a security model and why the model is important, the
functions of a perimeter-based security model, the Zero Trust security model
design principles, and how the principle of least privilege applies to the Zero Trust
security model.
The Zero Trust security model addresses some of the limitations of perimeter-
based network security strategies by removing the assumption of trust from the
equation. With a Zero Trust model, essential security capabilities are deployed in
a way that provides policy enforcement and protection for all users, devices,
applications, and data resources, as well as the communications traffic between
them, regardless of location. There are a few types those are No Default Trust,
Monitor and Inspect, and Compartmentalize.
20
4.2 Fundamentals of Network Security
21
The Net
In the 1960s, the U.S. Défense Advanced Research Projects Agency (DARPA)
created ARPANET, the precursor to the modern internet. ARPANET was the first
packet-switched network. A packet-switched network breaks data into small
blocks (packets), transmits each packet from node to node toward its destination,
and then reassembles the individual packets in the correct order at the destination.
The ARPANET evolved into the internet (often referred to as the network of
networks) because the internet connects multiple local area networks (LAN) to a
worldwide 10 wide area network (WAN) backbone. Today billions of devices
worldwide are connected to the Internet and use the transport communications
protocol/internet protocol (TCP/IP) to communicate with each over a packet-
switched network. Specialized devices and technologies such as routers, routing
protocols, SD-WAN, the domain name system (DNS), and the world wide web
(WWW) facilitate communications between connected devices.
With almost five billion internet users worldwide in 2022, which represents well
over half the world’s population, the internet connects businesses, governments,
and people across the globe. Our reliance on the internet will continue to grow,
with nearly 30 billion devices “thing” – including autonomous vehicles,
household appliances, wearable technology, and more – connecting to the internet
of things (IoT) and nearly nine billion worldwide smartphone subscriptions that
will use a total of 160 EB of monthly data by 2025. IoT connectivity technologies
are broadly categorized into five areas: cellular, satellite, short-range wireless,
low-power WAN and other wireless WAN, and Identity of Things (IDOT).
22
Addressing and Encapsulation
TCP/IP Overview
In cybersecurity, you must understand that applications sending data from one
host computer to another host computer will first segment the data into blocks
and will then forward these data blocks to the TCP/IP stack for transmission. The
TCP stack places the block of data into an output buffer on the server and
determines the maximum segment size of individual TCP blocks permitted by the
server operating system. The TCP stack then divides the data blocks into 11
appropriately sized segments, adds a TCP header, and sends the segment to the IP
stack on the server. The IP stack adds source and destination IP addresses to the
TCP segment and notifies the server operating system that it has an outgoing
message that is ready to be sent across the network. When the server operating
system is ready, the IP packet is sent to the network adapter, which converts the
IP packet to bits and sends the message across the network.
A VPN creates a secure, encrypted connection (or tunnel) across the internet
between two endpoints. A client VPN establishes a secure connection between a
user and an organization's network. A site-to-site VPN establishes a secure
connection between two organizations' networks, usually geographically
separated. VPN client software is typically installed on mobile endpoints, such as
laptop computers and smartphones, to extend a network beyond the physical
boundaries of the organization. The VPN client connects to a VPN server, such
as a firewall, router, or VPN appliance (or concentrator). After a VPN tunnel is
23
established, a remote user can 13 access network resources, such as file servers,
printers, and Voice over IP (VoIP) phones, as if they were physically in the office.
• Cloud Computing
• Cloud Native Technologies
• Cloud Native Security
• Hybrid Data Centre Security
• Prisma Access SASE Security
• Prisma SaaS
• Prisma Cloud Security
24
4.4 The Fundamentals of SOC (Security Operations Centre)
25
5.CONCLUSION
All the four courses helped me gain knowledge in cybersecurity operations, cloud
computing models, potential to defend home networks and mission critical
infrastructure. It was delightful as it helped me develop skills in rapidly changing
technologies. This raised my interest in cybersecurity and to pursue a career in
cybersecurity platform.
26