0% found this document useful (0 votes)
15 views12 pages

Mad Unit 1

The document provides an overview of mobile technologies and application development, focusing on mobile apps, their development processes, and key services. It covers the history of mobile technologies, cellular networks, mobile operating systems, frameworks, and key features of Android, including its architecture and components. Additionally, it discusses the use of activities, fragments, and intents in Android app development, along with tools and steps for creating and publishing applications.

Uploaded by

Saiteja
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views12 pages

Mad Unit 1

The document provides an overview of mobile technologies and application development, focusing on mobile apps, their development processes, and key services. It covers the history of mobile technologies, cellular networks, mobile operating systems, frameworks, and key features of Android, including its architecture and components. Additionally, it discusses the use of activities, fragments, and intents in Android app development, along with tools and steps for creating and publishing applications.

Uploaded by

Saiteja
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

NOBLE COLLEGE

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.

Mobile apps are developed using mobile technologies such as:

• Programming Languages: Java, Kotlin, Swift

• Frameworks: Android Studio, Flutter, React Native

• Communication Networks: 4G, 5G, Wi-Fi, Bluetooth


What is a Mobile Application?

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.

What is Mobile Application Development?

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.

1.2 BRIEF HISTORY OF MOBILE TECHNOLOGIES

Generation Key Features Examples

1G Analog voice calls Motorola DynaTAC 8000X

2G Digital signals, SMS GSM, Nokia 3310

3G Video calling, internet UMTS, CDMA2000

4G HD streaming, LTE Jio 4G, Airtel 4G

5G Ultra-fast speed, IoT support Real-time surgery, Smart cities

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

Cellular networks form the backbone of mobile communication.

• 1G – Analog voice

• 2G – Digital voice + SMS

• 3G – Internet, video calls

• 4G LTE – High-speed broadband

• 5G NR – Real-time streaming, AR/VR


1.3.2 Mobile Operating Systems (OS)

OS is software that manages hardware and software resources on mobile devices.

• Android (Google) – Open source, dominant worldwide.

• iOS (Apple) – Secure, smooth UI.

• Others: Tizen (Samsung), HarmonyOS (Huawei), BlackBerry OS (discontinued)


1.3.3 Mobile Development Frameworks

Type Examples Advantages

Android Studio (Kotlin/Java), Xcode


Native High performance, full hardware access
(Swift)

Cross-
Flutter, React Native, Xamarin Single codebase for Android & iOS
Platform

Built using HTML/CSS/JS, quick


Hybrid Ionic, Cordova
development

1.3.4 Mobile Web Technologies

• HTML5: Rich multimedia websites (e.g., YouTube)

• PWA: Progressive Web Apps like Twitter Lite – installable web apps that work offline

1.3.5 Connectivity & Communication

• Bluetooth 5.0: Connect wireless devices like headphones

• Wi-Fi 6: High-speed, low latency

• NFC: Contactless payments like Google Pay, Apple Pay


1.3.6 Sensors and Hardware Innovations
• Accelerometers & Gyroscopes: Motion sensing (used in games and fitness)

• Biometric Sensors: Face ID, fingerprint sensors

• Proximity Sensors: Turn off screen during calls

• Ambient Light Sensors: Auto screen brightness


• Infrared Blaster: Remote control apps
1.3.7 Location-Based Services (LBS)

• GPS: Satellite-based location detection (Google Maps)

• Geofencing: Virtual boundaries for apps to trigger actions (e.g., turning on lights when arriving
home)

1.3.8 Cloud Storage

Stores data online and syncs across devices.

• Examples: Google Drive, iCloud, Dropbox

1.3.9 Emerging Technologies

• 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)

1.4 KEY MOBILE APPLICATION SERVICES

Service Description Example

Push Notifications Sends alerts even when app is closed Instagram notifications

In-App Messaging Real-time communication inside the app WhatsApp, Messenger

Analytics & Tracking Tracks user activity & app performance Firebase Analytics

User Authentication Login via email, Google/Facebook Facebook Login

Payment Processing Handles in-app purchases Google Pay, Apple Pay

Cloud Storage Online file storage & sync Google Drive, iCloud

Location Services GPS-based services Uber, Google Maps

Social Media Integration Share content via social media TikTok share

Cloud Messaging Real-time message delivery Firebase Cloud Messaging

Voice Recognition Converts speech to text Google Assistant, Siri

Offline Access Works without internet Google Maps offline mode

Personalization Tailors content to user Spotify recommendations

AR Integration Immersive experience IKEA Place app

Biometric Authentication Secure login Face ID, Fingerprint scan


Service Description Example

Deployment App store publishing Google Play Store, App Store

CHAPTER 2: Introducing Android


2.1 INTRODUCTION
Android is an open-source mobile operating system developed by Google. It is designed primarily for
touchscreen mobile devices such as smartphones and tablets. Android runs millions of apps that power
phones, smart TVs, wearables, and even automobiles.

2.1.1 BRIEF HISTORY OF ANDROID

Year Milestone

2003 Android Inc. founded by Andy Rubin

2005 Google acquires Android Inc.

2007 Google forms Open Handset Alliance

2008 First Android phone (HTC Dream) launched

2023 Android 14 released on Feb 8, 2023

2.1.2 WHAT IS ANDROID?

Android is a Linux-based, open-source software stack that includes:

• Operating System (OS)

• Middleware (services and libraries)

• Key mobile applications

It is “the first complete, open, and free mobile platform.”


Definitions:

• Andy Rubin: Envisioned Android to bring internet power into everyone’s hands.
• Google: Android is a mobile OS for touchscreen devices like smartphones/tablets.

2.1.3 KEY FEATURES OF ANDROID

1. Open-Source Platform

o Based on the Linux kernel, released under Apache License.

o Example: LineageOS, Paranoid Android.

2. Customizable User Interface

o Widgets, launchers, wallpapers.


o Example: Nova Launcher.
3. Google Services Integration
o Gmail, Google Maps, Google Drive, Google Assistant.

4. Extensive App Ecosystem

o Over 3 million apps in Google Play Store.

5. Multi-Device Support

o Phones, TVs (Android TV), watches (Wear OS), cars (Android Auto).

6. Multitasking & Split-Screen Mode

o Run two apps at the same time.


7. Advanced Notifications

o Actionable messages with reply/quick actions.

8. Connectivity Options

o Bluetooth, NFC, Wi-Fi Direct, USB OTG.

9. Google Assistant Integration


o "Hey Google" for hands-free control.

10. Security & Regular Updates

o Monthly patches and Google Play Protect.


2.1.4 MOBILE APP DEVELOPMENT USING ANDROID

• Languages: Java, Kotlin

• Tools: Android Studio, SDK, Emulator

• Output: APK (Android Package)


• App distribution via Google Play Store or third-party markets.

2.1.5 ARCHITECTURE OF ANDROID

4-Layered Architecture:
1. Linux Kernel

o Hardware abstraction, device drivers, power management

2. Libraries and Android Runtime (ART)

o SQLite, SSL, WebKit

o ART: Executes Android bytecode

3. Application Framework

o APIs for app components


o Managers: ActivityManager, PackageManager

4. Applications Layer

o Gmail, Calendar, Camera, Third-party apps


2.1.6 NATIVE ANDROID APPLICATION
Native Android apps are built using Android SDK and run directly on Android OS.
Advantages:

• High performance
• Access to full device features

• Seamless integration with hardware

2.1.7 ADVANTAGES AND DISADVANTAGES OF ANDROID

Advantages Disadvantages

Free and Open Source Fragmentation (many device models)

Large App Ecosystem Security concerns with third-party apps

Developer Support Hardware inconsistency

Customization Performance can vary

2.2 ANDROID APPLICATION COMPONENTS

2.2.1 Primary Components

1. Activity – Single screen UI (e.g., Login screen)

2. Service – Background processing (e.g., music player)

3. Broadcast Receiver – Listens to system events (e.g., SMS received)

4. Content Provider – Data sharing (e.g., Contacts)


2.2.2 Secondary Components

• Fragments – Modular UI blocks

• Intents – Message-passing mechanism

• Resources – Strings, layouts, drawables

• AndroidManifest.xml – App configuration

2.3 EXPLORING THE DEVELOPMENT ENVIRONMENT

2.3.1 Android SDK

Includes tools, emulator, libraries, and debugger.

2.3.2 Android Studio

Official IDE with layout editor, Logcat, Gradle, Emulator.

2.3.3 Android Emulator

Simulates device to test apps.

2.3.4 ADB (Android Debug Bridge)


Command-line tool to install/debug apps on devices/emulators.

2.3.5 Gradle

Build automation system for dependencies, build variants.

2.4 OBTAINING REQUIRED TOOLS

• Download Android Studio from developer.android.com

• Install SDK, configure virtual devices.

2.5 INSTALLING ANDROID STUDIO


1. Run installer

2. Select SDK components

3. Create new project

4. Test on emulator/phone

2.6 YOUR FIRST ANDROID APPLICATION – "HELLO WORLD"

• Project structure includes:

o Java file (MainActivity.java)

o Layout file (activity_main.xml)


o Manifest (AndroidManifest.xml)

2.6.1 FLOW OF EXECUTION

1. Launch via Manifest → Main Activity

2. Lifecycle: onCreate() → onStart() → onResume() … etc.

3. UI Load: Set using setContentView() in onCreate()

2.7 EXPLORING ANDROID STUDIO IDE

• Project View: Shows files like Java, resources, manifest


• Code Editor: Intelligent suggestions, error checking

• Logcat: Debugging tool

• AVD Manager: Manages virtual devices

2.8 DEBUGGING IN ANDROID STUDIO

• Logcat: Real-time logs

• Breakpoints: Pause app to inspect

• Step Execution: Line-by-line debugging


2.9 PUBLISHING YOUR APP

Steps:

1. Create Google Developer Account

2. Generate signed APK/AAB


3. Login to Google Play Console
4. Upload app details (title, screenshots, APK)

5. Publish

Chapter 3: Using Activities, Fragments, and Intents in Android


3.1 Introduction

This chapter explains the building blocks of Android apps:

• Activities (each screen)

• Intents (used to communicate between components)

• Fragments (reusable parts of a UI within activities)

Each activity, fragment, and intent plays a role in creating interactive, modular, and dynamic Android
applications.

3.2 Working with Activities

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

• Must be registered in AndroidManifest.xml

• Has its own lifecycle

3.2.1 Creating an Activity

Steps:

1. Create a Java/Kotlin class that extends Activity

2. Override onCreate() method

3. Set content view using setContentView()


4. Design XML layout and link UI elements using findViewById()

Example: MainActivity.java

public class MainActivity extends Activity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

}
3.2.2 Activity Lifecycle

Method Description

onCreate() Initialization of activity

onStart() Activity becomes visible

onResume() Activity ready to interact

onPause() Activity partially hidden

onStop() Activity completely hidden

onDestroy() Activity about to be destroyed

onRestart() Called before restarting an activity

3.2.3 Features of Activity

• Displays UI using layouts

• Handles user interaction

• Manages navigation using intents


• Responds to system and user events

• Supports configuration changes like rotation

3.3 Using Intents

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

• Launch other activities or components

• Pass data between screens

• Interact with other apps (Maps, Browser, etc.)


3.3.2 Creating an Intent

Intent intent = new Intent(CurrentActivity.this, TargetActivity.class);

startActivity(intent);

Optional:

java

CopyEdit

intent.putExtra("USER_NAME", "Srikanth");
3.3.4 Types of Intents

Type Use

Explicit Launches a specific component

Implicit Requests a component that can handle an action (like opening browser)

3.3.5 Intent Methods

• putExtra(), getExtras()

• setAction(), setData()

• resolveActivity()

3.3.9 Passing Data


intent.putExtra("key", "value");

On target activity:

String value = getIntent().getStringExtra("key");

3.3.10 Using Intent to Open Built-in Apps

Open Contacts:

Intent intent = new Intent(Intent.ACTION_VIEW);

intent.setData(ContactsContract.Contacts.CONTENT_URI);
startActivity(intent);

3.4 Fragments in Android

What is a Fragment?
A Fragment is a modular section of an activity that has:

• Its own UI

• Its own lifecycle

• Can be reused across activities


Used to support multi-pane UI in tablets and dynamic UI in phones.

3.4.2 Fragment Lifecycle

Method Purpose

onAttach() Linked to activity

onCreate() Non-UI setup

onCreateView() Inflate layout

onActivityCreated() Final initialization


Method Purpose

onStart() Visible to user

onResume() Interactive

onPause() Partially visible

onStop() Hidden

onDestroyView() Clean view

onDestroy() Cleanup

onDetach() Detached from activity

3.4.3 Implementing Fragments

1. Create Fragment Class

public class MyFragment extends Fragment {

@Override
public View onCreateView(...) {

return inflater.inflate(R.layout.fragment_my, container, false);

2. Add Fragment

• Static (XML): Use <fragment> tag in activity XML

• Dynamic (Java): Use FragmentManager and FragmentTransaction

FragmentManager fm = getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();

ft.add(R.id.container, new MyFragment());

ft.commit();

3.5 Back Stack

The Back Stack stores activities/fragments for back navigation.


Use addToBackStack() to maintain navigation history.

3.7 Combining Intents & Fragments

Create buttons to launch:

• Explicit intent for second activity


• Implicit intent for browser

• Contact viewer using content provider


This demonstrates communication between:
• Activities ↔ Fragments

• App ↔ System component

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy