Mad Unit 1
Mad Unit 1
MAD NOTES
UNIT 1
CHAPTER 1: Introduction to Mobile Technologies and Key Services
1.1 INTRODUCTION
Mobile application development is the process of creating software applications that run on mobile devices
like smartphones and tablets. These apps allow users to perform a variety of tasks such as messaging,
gaming, e-commerce, banking, fitness tracking, and more.
A Mobile Application (App) is a software application designed specifically to run on mobile devices like
smartphones and tablets. These apps are downloaded from app stores like Google Play Store (Android) and
Apple App Store (iOS).
Example: WhatsApp – a messaging app that allows sending text, images, voice, and videos over the
internet.
It refers to the process of designing, coding, testing, and deploying applications for mobile platforms.
Who is the Father of Android?
Andy Rubin is known as the father of Android. He co-founded Android Inc. in 2003, which was later
acquired by Google in 2005.
1973: First mobile phone call by Martin Cooper using a Motorola prototype.
1992: IBM Simon – First smartphone with a touchscreen, email, and apps.
1.3 DIFFERENT MOBILE TECHNOLOGIES
1.3.1 Cellular Networks
• 1G – Analog voice
Cross-
Flutter, React Native, Xamarin Single codebase for Android & iOS
Platform
• PWA: Progressive Web Apps like Twitter Lite – installable web apps that work offline
• Geofencing: Virtual boundaries for apps to trigger actions (e.g., turning on lights when arriving
home)
• Augmented Reality (AR): Overlays digital content on the real world (e.g., Pokémon GO)
• Virtual Reality (VR): Immersive digital experience using headsets (e.g., Oculus VR)
• IoT (Internet of Things): Smart devices that communicate (e.g., Smart TVs, Wearables)
• AI (Artificial Intelligence): Machine learning, voice recognition, image processing (e.g., Google
Assistant)
Push Notifications Sends alerts even when app is closed Instagram notifications
Analytics & Tracking Tracks user activity & app performance Firebase Analytics
Cloud Storage Online file storage & sync Google Drive, iCloud
Social Media Integration Share content via social media TikTok share
Year Milestone
• Andy Rubin: Envisioned Android to bring internet power into everyone’s hands.
• Google: Android is a mobile OS for touchscreen devices like smartphones/tablets.
1. Open-Source Platform
5. Multi-Device Support
o Phones, TVs (Android TV), watches (Wear OS), cars (Android Auto).
8. Connectivity Options
4-Layered Architecture:
1. Linux Kernel
3. Application Framework
4. Applications Layer
• High performance
• Access to full device features
Advantages Disadvantages
2.3.5 Gradle
4. Test on emulator/phone
Steps:
5. Publish
Each activity, fragment, and intent plays a role in creating interactive, modular, and dynamic Android
applications.
What is an Activity?
An Activity is a screen that contains the user interface (UI) for user interaction.
Each screen in an app like WhatsApp (Chats, Contacts, Settings) is implemented as a separate activity.
Key Characteristics:
• Subclass of Activity or AppCompatActivity
Steps:
Example: MainActivity.java
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
3.2.2 Activity Lifecycle
Method Description
What is an Intent?
An Intent is a messaging object used to request actions from another component (like Activity, Service,
BroadcastReceiver).
3.3.1 Features of Intents
startActivity(intent);
Optional:
java
CopyEdit
intent.putExtra("USER_NAME", "Srikanth");
3.3.4 Types of Intents
Type Use
Implicit Requests a component that can handle an action (like opening browser)
• putExtra(), getExtras()
• setAction(), setData()
• resolveActivity()
On target activity:
Open Contacts:
intent.setData(ContactsContract.Contacts.CONTENT_URI);
startActivity(intent);
What is a Fragment?
A Fragment is a modular section of an activity that has:
• Its own UI
Method Purpose
onResume() Interactive
onStop() Hidden
onDestroy() Cleanup
@Override
public View onCreateView(...) {
2. Add Fragment
FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.commit();