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

Mobapp Reviewer

Mobile computing involves the use of portable devices like smartphones and tablets for information processing and access on the go, characterized by portability, wireless connectivity, real-time access, and personalization. Key advantages include connectivity through various wireless networks, enhanced social interaction via apps, and extensive customization options. The document also outlines the evolution of mobile technology, including milestones in mobile computing, mobile operating systems, and advancements in mobile device features and security.

Uploaded by

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

Mobapp Reviewer

Mobile computing involves the use of portable devices like smartphones and tablets for information processing and access on the go, characterized by portability, wireless connectivity, real-time access, and personalization. Key advantages include connectivity through various wireless networks, enhanced social interaction via apps, and extensive customization options. The document also outlines the evolution of mobile technology, including milestones in mobile computing, mobile operating systems, and advancements in mobile device features and security.

Uploaded by

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

MOBAPP REVIEWER

LESSON 1 (INTRO TO MOBILE COMPUTING)


MOBILE COMPUTING – describes use of portable electronic devices—like laptops, tablets, & smartphones—for info
processing & access while on the go. These gadgets have wireless connectivity, users may access another networks &
internet from almost anywhere.

CHARACTERISTICS OF MOBILE COMPUTING:


1. Portability – mobile devices are made to be utilized & carried around in variety of environments.
2. Wireless Connectivity – in order to connect in internet & other devices, mobile computing uses wireless networks like
Wi-Fi, cellular data, & Bluetooth.
3. Real-time Access – regardless of where they are, users may access info & services instantly.
4. Personalization – individual requirements & preferences can be catered for on mobile devices.

ADVANTAGES OF MOBILE COMPUTING: (may use for business, entertainment, & location finding, among other things.)
CONNECTIVITY

 Wireless Networks: Wi-Fi & cellular data networks are main sources of internet connectivity for mobile devices.
 Bluetooth: Facilitates close communication between gadgets, allowing for file exchange & peripheral
connections.
 NFC (Near-Field Communication): Enables data transfer & contactless payments between devices that are close
to one another.

SOCIAL INTERACTION

 Social Media Platforms: Facebook, Instagram, Twitter, & other platforms have transformed social interaction
when accessed through mobile devices.
 Apps for Messaging: Group conversations & real-time communication are made possible by apps like Telegram,
Messenger, & WhatsApp.
 Online Communities: Mobile users can engage in online communities & meet people who share their interests.

CUZTOMIZATION

 App Stores: To customize their mobile devices, users can download & install variety of apps.
 Themes and Wallpapers: Users can customize their smartphones' looks by adding new themes & wallpapers.
 Integration of Widgets: You can add widgets to your home screen to provide quick access to info & apps that you
use frequently.
 Customization of Settings: Users have ability to change number of settings, including notification preferences,
sound level, & screen brightness.

KEY MILESTONES OF MOBILE COMPUTING:


1970s: Early portable computers like IBM 5100
1980s: Development of cellular networks & mobile phones
1993: IBM Simon introduced as first smartphone
1996: Palm Pilot popularizes personal digital assistants (PDAs)
Late 1990s: Increased adoption of WAP (Wireless Application Protocol) for mobile internet
2000s: Apple iPod revolutionizes digital music
2007: iPhone launch marks significant breakthrough
2008: Android OS introduced
2010s: Rapid growth of mobile apps & services
2020s: Emergence of 5G networks, foldable phones, wearable devices, & AR technologies

MOBILE DEVICE – transportable electronic gadgets that let people access & process data while they're out & about.
Usually, they consist of laptops, tablets, & cellphones.

CHARACTERISTICS OF MOBILE DEVICE:


1. Portability – made to be utilized & carried in variety of environments.
2. Internet Access & Wireless Service – wireless technologies such as Bluetooth, Wi-Fi, & cellular data allow mobile
devices to establish connections to internet & other networks.
3. Battery Power – have rechargeable batteries installed, allow them to run for number of hours.

HOW DO BATTERIES WORK?


– Rechargeable lithium-ion batteries are commonly used in mobile devices. Ions that travel between positive electrode
(cathode) & negative electrode (anode) are used by these batteries to store energy. Ions move from cathode to anode
during battery discharge, producing electrical current. Ions move from anode to cathode in opposite direction when
battery is charged.

REASONS FOR BATTERY FAILURE:

 Overcharging: Excessive charging might limit battery's life & harm its chemical composition.
 Overheating: Excessive amount of heat can harm battery's capacity & performance.
 Age: As batteries age, they naturally lose capacity & become less effective.
 Manufacturing flaws: Few batteries may have flaws in their construction that lead to an early failure.
 Physical Damage: Battery or its connections may sustain damage if gadget is dropped/ handled improperly.

• SMARTPHONES – used for online browsing, emailing, social networking, online sharing, selling, receiving & sending
SMART MOBILE DEVICES:

phone calls, SMS messages, & voicemails. Google's Android, Apple's iOS, Nokia's Symbian, RIM's BlackBerry OS,
Samsung's Bada, Microsoft's Windows Phone, & integrated Linux versions like Maemo & MeeGo distributions are most
widely used mobile OS on contemporary smartphones.

• Table PC and iPads – like laptops, tablets are little devices that offer special experience. Rather than using regular
computers & mobile apps, we use tablet-specific apps.

• PDA (Personal Digital Assistant) – function as lightweight, user-friendly, & info-sharing organizer/ day planner that
integrates with your system.

• Wearable technologies (wearables) – ones that people may physically wear to monitor, analyze, & share personal data.
With rise of consumer technology in gaming & fashion industries, intelligent IoT gadgets are able to capture biometric
data, including heart rate & sleep habits.

• AI (Artificial Intelligence) – In our mobile world, AI is becoming more prevalent. Even though time is still not here,
DEVELOPMENTS IN MOBILE TECHNOLOGY:

mobile AI is progressing.

 Alexa – from Amazon, multipurpose DA that can do wide range of tasks & provide answers to queries. Has voice
communication capabilities, music playback, to-do list building, alarm setting, podcast & audiobook playing, &
real-time news delivery for sports, traffic, weather, & other news. By utilizing it as home automation system, it
may also supply electricity to variety of smart devices.
 Siri – iOS & macOS computers, is Apple's help with voice recognition & artificial intelligence.
 Cortana – name of intelligent personal info navigator & assistance system for Windows Phone 8.1 & Windows
10. Microsoft's TellMe voice technology, purchased in 2009, foundation for Cortana.
 Assistant to Google – virtual assistant of Google. Google Now function on Android, which provided with info
w/out requesting it, is evolved by this app. Rivals are Microsoft Cortana, Alexa from Amazon, & Siri from Apple.

• Location-Based Technology – Your location is being tracked by your tablets & cellphones. With your consent, mobile
apps can also track your whereabouts.

• AR (Augmented Reality) – Through use of computer-generated perceptual knowledge, objects in actual world are
improved in AR, an immersive picture of real world.

• Enhanced Mobile Security – Complete protection of data on mobile devices & networks that connect them is known
as mobile device security.

 Biometrics Advances – used to enhance mobile device security:


• speech recognition
• facial recognition
• signature recognition
• fingerprint recognition

• Advancement of Mobile Cameras – Nowadays, majority of digital cameras are manufactured digitally. Along with
smartphones, plethora of other camera apps allow users to take, edit, & share photographs with others directly from
their cameras.

• Resolution & Display – resolution of display/ screen, number of pixels.


Types of Resolution:

• HD (High Definition) – provides an elevated clarity. 1280 x 720 px representation is required.


• Full HD – resolution is 1920 x 1080 px. Screen's size affects pixel density. In 5- inch smartphones, pixel
density is approximately 440 dpi; in 5.5-inch displays, is 400 dpi.
• Quad HD (2K) – is 4x HD standard's definition. QHD panel of same size may hold same amount of px as 4
HD monitors. Dimensions of QHD pixel are 2560 x 1440. Px density of QHD 5.5-inch panel is 538 ppi.
• Ultra HD (4K) – 4K is 4096 x 2160 px, while UHD is 3860 x 2160 px.

• Mobile Device Display – Today's smartphones come with variety of advanced display types, including TFT, IPS, OLED,
AMOLED, Super AMOLED, LCD, & numerous others that less prevalent, such as TFT-LCD.

• LCD (Liquid Crystal Display) – collection of liquid crystals that are backlit.
• TFT (Thin Film Transistor) – improved LCD variant that makes use of active matrix (similar to AM in
AMOLED).
• IPS (In-Plane switching) – additional development for TFT LCDs. Compared to TFT-LCDs, color
reproduction is noticeably superior. Better viewing angles are offered by it.
• AMOLED (Active Matrix Organic Light-Emitting Diodes) – merely moniker for another thin-film viewing
technology; active matrix of TFT LCD technology has already been developed.
• OLED (Organic Light-Emitting Diodes) – emits light when current flows through it. Displays are 'always
off' unless individual px are energized, in contrast to backlit LCD screens.

• Wireless Charging Capability – phone may be charged wirelessly without need for connections by using charging pad.

• Storage on Mobile Devices/Media – In order to store info either temporarily/ permanently, storage device is required.
Device may be internal/ external to computer, mobile device, server/ other computer system.

 INTERNAL MEMORY – os, preinstalled apps, & other system software are installed here, which is manufacturer-
installed storage space that usually 16, 32/ 64 GB.
 EXTERNAL MEMORY – removable microSD card/ anything similar is referred to as this. Pre-inserted microSDD
card often sold with many devices that have this feature.
 CLOUD STORAGE – can upload your data to internet acc & save them selectively. Accessed on mobile devices like
laptops, tablets, & smartphones.

LESSON 2 (INTRO TO ANDROID)

• Mobile OS is a software platform for mobile devices on top of other running programs.
MOBILE DEVICE OS & API LEVEL

• Mobile OS & API Level – designed solely for smart telephones, PDAs, tablets/ other embedded mobile systems.
• Popular mobile os are Android, Symbian, iOS, BlackBerry OS, & Windows Mobile.
• Mobile OS describes & defines mobile devices' features & functions, including keyboards, synchronization, e-mail, &

• API levels allow you to interact with apps an&d functions that built into devices as programmer.
text ms.

MOBILE SYSTEMS – defines apps of 3rd parties that can be used on computer:
1. Apple's/ iPhone iOS – renamed in 2010 to reflect evolving support of os for additional Apple devices.
2. BlackBerry OS – owned mobile os developed by Research in Motion (RIM) for its BlackBerry smartphone series.
BlackBerry is well known for its native corporate connectivity service, enabling activation & synchronization of complete
Wireless electronic mail, schedules, projects, notes, & contacts.
3. Windows Phone – Windows Mobile interface, Microsoft Mobile OS is available on range of wireless devices & then
Windows Phone. The Microsoft mobile apps and Samsung, Dell, HP, Lenovo, Palm, and I-mate products are available.
4. Android Google – Google Android is Linux-based mobile OS that rapidly became Apple's largest mobile device market
competitor.

ANDROID OS & API LEVEL


– Android (Android OS) is Linux-based: Google-powered. Designed for modern smart devices, especially smartphones.
– Platform is changing what mobile can do. Android device operates at exactly 1 API level.
– When an app is built, contains the following API level info, first target level of Android API that app is built to run on.
– Android has been transformed visually, conceptually, and functionally from its initial release to today — time and time
again.
– Google released first beta version of Android Software Development Kit (SDK) in 2007; Android 1.0 was released in
September 2008 its first commercial version.

CODENAMES & HISTORY OF THE GOOGLE ANDROID OS


Android 1. (No Codename)

 September 2008. Android's first smartphone was shipped with Android 1.0 w/out candy nickname.
 Had slide-out keyboard & clickable nav trackball instead.
 Internal code name of Android 1.0 is Android Angel Cake, & Android 1.1 is Battenberg.
NEW KEY FEATURES:
o OS Open Source
o Panel of notifS

Android 1.5 API level 3: CUPCAKE

 April 27, 2009. Had introduced several improvements to Android interface, including first onscreen keyboard—
something needed when phones moved away from which used to be physical keyboard model.
NEW KEY FEATURES:
o Onscreen keyboard & third-party keyboard app support
o Support for Widget
o Copy & paste to web browser

Android 1.6 API level 4: DONUT

 September 15, 2009. It was essential to update Android Marketplace, Fast Search Box, quick cameras, Battery
usage indicators, Text-to- speech support, & better user experiences.
NEW KEY FEATURES:
o Improved search functions across OS
o Photo gallery & camera more closely integrated
o Text-to- speech functionality

Android 2.0 API level 5 2.0.1 API level 6 – 2.1 API level 7: ECLAIR

 October 26, 2009. Among improvements with this were new features in accs management, contacts & Sync. First
Android update to achieve universal awareness.
NEW KEY FEATURES:
o Tap contact to make call/ send text
o Range of camera features, including flash support & scene mode
o Live wallpapers
o History of searchable SMS & MMS
o Support for Microsoft Exchange E-mail
o Support for Bluetooth 2.1

Android 2.2 API level 8: FROYO

 May 20, 2010, at Google I / O 2010. Only 4 months after Android 2.1 arrived, Google served Android 2.2,
primarily focused on improving under-hood performance.
NEW KEY FEATURES:
o Push notifications to
o USB connection & Wi-Fi hotspot functionality
o Support for Adobe Flash
o Ability to deactivate data services

Android 2.3 API level 9 & 2.3.4 API level 10: GINGERBREAD

 December 6, 2010. Supplied to Android users, experience more straightforward and faster.
NEW KEY FEATURES:
o Faster, more accurate virtual keyboard
o Support for NFC
o Multi-camera support, including selfie
o Support for Google Talk voice & video chat
o More efficient battery pack

Android 3.0 - 3.2 API level 11,12,13: HONEYCOMB

 February 22, 2011, and only for tablets.


NEW KEY FEATURES:
o First tablet-only update to OS
o System Bar: Quick access to notif & other info at bottom of screen
o Action Bar: nav, widgets, & other content on top of screen
o Recent apps button in System Bar with multitasking support
o Redesigned keyboard for larger screen size
o Browser tabs & mode of incognito
o Resizable home screen widgets

Android 4.0 API level 14 & 15: ICE CREAM SANDWICH

 October 18, 2011. Hugely designed to improve its functionality compared to early Android versions.
NEW KEY FEATURES:
o Calendar pinch & zoom functionality
o Capturing Screenshot
o Apps could be accessed from lock screen
o Unlock face
o Users may set data limits in settings to avoid overages
o Photo editor built-in
o Android Beam

Android 4.1 - 4.3 API level 16 - 18: JELLY BEAN

 June 9, 2012.
NEW KEY FEATURES:
o Extendable notifs
o Ability to turn off app-by-app notifs
o 3rd-Party Launchers may add widgets w/out root access
o Swipe camera from lock screen
o Multiple tablet user accs
o Group messaging service
o Support for Native Emoji
o New clock, world clock, stopwatch, & timer app.

Android 4.4 API level 19 & 20: KITKAT

 October 31, 2013. Voice: OK, Google, immersive interface, & smart dialing are significant updates.
 Old gadgets brought KitKat new start. It will run on less RAM (Minimum 512 MB) of units.
NEW KEY FEATURES:
o Wear smartwatch OS (4.4W)
o Smartwatches support for GPS & Bluetooth music (4.4W.2)
o Users could set defaults for text messaging & launcher apps.
o Printing wireless

Android 5.0 & 5 API level 21 & 22: LOLLIPOP

 November 12, 2014. Other essential updates include material design, multiscreen, & lock screen alerts.
NEW KEY FEATURES:
o Notif of access to lock screen
o Settings of app & notif accessible from lock screen
o Smart Lock kept your phone locked in specific scenarios
o Search within app settings
o Recently used apps remembered after restarting
o Tap & Go to transfer data from one device to another
o Support for multiple SIM card
o Native Wi-Fi call support
o App for Flashlight

Android 6.0 - 6.0.1 API level 23: MARSHMALLOW

 October 5, 2015. Now the tap feature in this version has been added.
NEW KEY FEATURES:
o Don't disturb mode
o Android Pay for Mobile Payment
o Google Now on Tap, Google Assistant's precursor
o Doze Mode keeps apps from draining battery when phone is not in use
o Support for native fingerprint reader
o App permissions granted on individual basis
o Automatic backup & restore apps
o Search App Bar & Favorites
o Support for USB-C

Android 7.0 & 7.1.2 API level 24 & 25: NOUGAT

 March 9, 2016. With native spread screen, new bundled-by- app framework to arrange alerts & data saver.
NEW KEY FEATURES:
o Support for native split-screen
o Emojis with additional colors of skin & hairstyles
o Ability to add emergency info to your lock screen
o Intro of virtual reality platform of Daydream
o Photo-in-picture support for Android TV
o Fingerprint Sensor Gesture to Open / Close Shade Notif
o Support GIF for default keyboard
o Battery Use Alerts

Android 8.0 & 8.1 API level 26 & 27: OREO

 August 21, 2017.


NEW KEY FEATURES:
o Go Edition launched
o Quick Settings, Bluetooth battery level for connected devices
o Navi buttons are dim when not in use
o Automatic themes of light & darkness
o Cheese in emoji hamburger moved from bottom to top of burger.

Android 9.0 API level 28: PIE

 August 6, 2018.
NEW KEY FEATURES:
o Digital Well-being dashboard
o Smart Messaging Answers
o Mute notifs (other than emergency) by putting your phone face down
o Automatically enable Do Not Disturb during bedtime
o Interface turns gray at bedtime to discourage use
o Removed button Multitask / Overview
o SS button added to power option
o Annotation of SS
Android 10 API level 29

 March 13, 2019. First beta under tentative title "Android Q." September 3, 2019, first Android that was only
known by number.
 Internal code name is Quince Tart.
NEW KEY FEATURES:
o Support for folding phones
o Support of 5G
o Live License
o Focus mode: Focus mode
o More transparency of privacy & location settings
o Parental controls to move forward on all Android phones

Android 11 API level 30

 September 8, 2020. 18th version of Android, mobile OS developed by Open Handset Alliance led by Google.
 Internal code name is Red Velvet Cake.
NEW KEY FEATURES:
o Message bubbles & 'priority' convos
o Redesigned notifs
o New Power Menu with smart home controls
o New Media playback widget
o Resizable picture-in-picture window
o Screen recording
o Smart app suggestions
o New Recent apps screen
o Dark mode scheduling

Android 12 API level 31

 First beta (May 18, 2021). Publicly (October 4, 2021). Latest Android version to date. 19th version of Android,
mobile OS developed by Open Handset Alliance led by Google.
 Internal code name is Snow Cone.
NEW KEY FEATURES:
o New Lockscreen & Notifications UI
o Px Exclusive: Custom Lockscreen Clocks.
o “Silky Home” for further improvements in One-Handed Usability
o “Monet” Wallpaper-based Expanded Theming System
o Dedicated One-Handed Mode
o Scrolling SS
o Improved Widgets

ADVANTAGES OF ANDROID

 Has wide range of options for apps user can choose from. Apps are categorized into topics, & each item has large
number of apps to download.
 Users can share smartphone internet with another devices/ PC through mobile hotspot. Help save money.
 While traveling from different locations/ to office & back, time consumed/ wasted was reduced.
 Increases productivity. Users can function quickly & efficiently from wherever they're at ease with.
 With improvement & availability of high-speed data connections & anyone can get all entertainment they want
when they browse Internet for live results, substantial costs.
 Can easily choose any low-cost mobile/ medium-range mobile device.

DISADVANTAGES OF ANDROID

 Android Apps are freely available in the Google Play Store, tons of ads start to appear on & over notif bar's app.
 Android devices can't be accessed if you've forgotten your e-mail ID/ password.
 Android is considered one of os that consume most battery.
 Compared to other apps, Android device isn’t considered safe.

LESSON 3 (ANDROID ARCHITECTURE & COMPONENTS)

ANDROID ARCHITECTURE
– Multiple software modules support mobile device functioning.
– Software modules contain mainly kernel & set of libraries, allow for development of mobile apps & form part of current
implementation, app framework, & runtime.

4 DIFFERENT LAYERS IN 5 SECTIONS (APP MODULES)

 Level 1: Linux Kernel – core of Android architecture that exists at root of Android arch. Responsible for device
control, power management, memory management, device management, & resource access.
 Level 2: Libraries and Android Runtime – variety of libraries are located in Linux kernel, includes open-source
Web browser engine WebKit, well-known library, useful SQLite database for storing & sharing app data libraries
for playing & recording audio, video, & SSL libraries for Internet Security.
Android Runtime – level provides key component called Dalvik Virtual Machine, JVM designed especially & optimized for
Android apps running on Android.

Dalvik – Android Virtual Machine; compile app on computer separately. Is Java Virtual Computer, designed for low
memory use, & enables multiple VM instances to run at once, use of Linux Mode for protection & process isolation.

 Level 3: Application Framework Layer – offers many higher-level programming resources in form of Java classes.
System developers are permitted to make use of such facilities in their apps.
A. Activity Manager − Manages all facets of life cycle & task stack apps.
B. Content Providers – Allows apps to publish & exchange data with other apps.
C. Resource Manager − Provides access to embedded non-code tools (strings, color settings, & user
interface layouts.)
D. Updates Manager − Allows programs to view alerts & notifs to users.
E. View Framework − Extensible series of views used to construct user interfaces for app.
 Level 4: Application Layer – highest, & for users, front end. This is where installed native apps developed using
Android & 3rd-party apps. Apps here are executed using runtime layer using framework layer classes & services.
E-mails, addresses, calendar, camera, time, music, gallery, computer, SMS, alarm, home, & clocks.

ANDROID CORE BUILDING BLOCK

 Android is just piece of code with well-defined life cycle.


KEY COMPONENTS/ BULDING BLOCKS
o Activities – single screen with user interface, performs actions on screen.
o View – UI element like button, label, text field. Anything you can see is view.
o Intent – way to pass data between various parts of app on system. Components are invoked using intent.
Used: Service Start, Launching Act, View web page & list of contacts, Broadcasting message, Call phone.
o Service – process that can run in background for long time. General-purpose entry point for all kinds of
reasons for keeping an app running in background.
o Broadcast Receiver – allows system to deliver events outside regular user flow to app, enabling app to
respond to system-wide broadcast advertising.
o Content Provider – manages shared apps that can be stored in file system, SQLite database, website, or
any other persistent storage site your app can access.

LESSON 4 (SETTING UP ADROID STUDIO)


USER INTERFACE

• way for user to interact with system/app like Android Studio. Without UI, can't navigate your way around app.
• medium that allows human- computer interaction & communication in device.
• Ex. computer mouse & keyboard, allows user to interact with computer.
• TYPES OF UI:
o Graphical User Interface (GUI)
o Command Line Interface (CLI)
o Menu-driven user interface
o Touch user interface
o Voice User Interface (VUI)
o Form-based user interface
o Natural language user interface
• Android Studio's UI is in form of GUI with very similar layout in typical app.
WELCOME SCREEN

• show user list of recent projects that user created.


• present user with Quick Start menu that allow them to start new AnStud proj, Open an existing AnStud proj, &
access projs currently under version control.
• Configure menu at bottom of window that allow user to access SDK Manager with lot of different settings &
configurations.

MAIN WINDOW

• default window that will be presented to user when an Android proj was open.
• Menu Bar
o located at very top of main window, contains wide range of menus that allow user to perform
various tasks within environment of AnStud.
• Toolbar
o shows tools & actions that frequently used by user.
o contains options to run your app in different Devices Settings, view proj structure, quick sync to Gradle,
create Android Virtual Devices (AVD), download & update SDK, Search Everywhere function, & Sign in to
Google button.
• Navigation Bar
o allows user to easily navigate & move around & folders of proj.
• Editor Window
o shows content of file that user is currently working on.
o displays different type of window based on file type that user is working on.
• Interface Layout Window 3 DIFFERENT VIEWS:
o Design View (Default View): allows user to drag & drop UI elements from Palette to create layout in
graphical view.
o Code View: allows user to design layout using XML code.
o Split View: allows user to simultaneously design layout on XML code while output of code is being
displayed.
• Status Bar
o displays messages that give info such code errors, warnings, successful status, etc. about proj & app that
is running.
• Project Tool Window
o shows hierarchical view of files & folders of proj.
o shows Android view, most important top-level source directories such Manifest, Java, & Resources.
o shows complete picture of directories from root node.

Tip of the Day window – contains tips & tricks that help user in using AnStud/ in development of Android app.

THEME – change this by going to File Menu > Settings > Editor > Color Scheme > General. Select from lighter them
(default)/ Darker theme (Darcula)/ High Contrast theme.

LESSON 5 (PROJECT FUNDAMENTALS)


ANDROID ACTIVITY

 represented by window composed of frontend & backend.


 frontend represents screen which contains UI of that activity.
 backend is instance class of Activity Class who controls & draws UI to window of frontend.
 in Android, an app can invoke another app, but instead of invoking whole app, invoking app can only invoke an
Act of another app.
 serves as an entry point for an app’s interaction with user.
 developer should implement an act as subclass of Act class.
 when app was opened, app typically calls "main act" by default. Each act can start another act to perform
different actions.
 when new act is being called, its window is being stacked on top of running act instead of replacing its content.
 act should be declared in "Manifest" file so that your app can use it.

ANDROID FRAGMENT

 has UI layout & corresponding class, which is Android Fragment class.


 unlike act, which can stand on its own, fragment can only exist within an act.

ANDROID INTENT

 an act can start another act. Mechanism for this procedure is what we call intent.
 consists of different parameters such description of operation be performed, & optionally data to be worked on.
 can explicitly & implicitly start an act.
 explicitly start an act, intent should reference act class by its parameter.
 when intent didn’t indicate act class be launched/ an action parameter is included; instead, it is implicit intent.
 another type of intent is Broadcast Intent. That is being broadcasted in whole Android system environment. Can
be picked up by interested app that registered Broadcast Receiver.

BROADCAST RECEIVER

 mechanism that allows an app to respond to Broadcast Intent. Uses intent filter to indicate what type of
broadcast it can react to.
 when intent matched filter of Broadcast Receiver, android runtime will invoke receiver even if app that registered
it is currently running.

ANDROID SERVICE

 process that runs in background & doesn’t have interface.


 can be started & managed by act, broadcast receiver/ other services.
 crucial in situation when background process should continue running even app that invoked it was terminated.

CONTENT PROVIDER

 allows an app to share data with another app. Data can be provided in form of file/ entire SQLite database.
 Android native apps include various standard content providers allowing apps to access its content such as
contact app & media app.

PERMISSION

 mechanism that protects privacy of user from app.


 app must ask for permission to access sensitive data such text ms, contacts, & mages/ ask for permission to
access specific features of device like camera.

CONTEXT

 current settings/ state of app/ object. When need to create object, needs to understand what is going on in app.
 newly created object will require context to fit in. Call context to get info regarding another part of your program

ANDROID PROJECT
o Project Structure
o android project is created in organized structure. Structures contain App Module & Gradle Scripts.
o module contains collection of source files & builds files that give developer an option to subdivided
project into different functionalities.
o Inside Project file, is Manifest folder. This contains AndroidManifest.xml file which it describes info about
app, such Android build tools, package name, app metadata, registered activities, intent filters,
permissions, & more.
o The manifest file is required to declare the following:
1. app's package name, is important for Android build tools to locate code entities to build project;
2. app components, includes all of acts, services, broadcast receivers, & content providers;
3. permissions that app needs in order to access protected parts of device/ android system; &
4. hardware & software features that might affect list of devices app can be installed from Google Play.
o Java folder that contains packages of Java/Kotlin test files & source codes such act classes, created upon
development of app.
o Resources (res) Folder contains none source code files like images & layout. Inside it, files are organized
based on their types.
 res/layout folder contains XML layout files that define UI of app, such act layouts, fragment layouts,
& different custom XML file layout.
 res/mipmap folder contains "launcher.xml" files contains image that app will use as launcher icon.
 res/values folder contains number of XML files. Act as variable/ data container that can be used by
layout files/ act subclass. Files: "strings" XML file, predefined strings, "colors" XML file, predefined
colors, & "styles" XML file, value of styles that app is using.
o Gradle Scrips directory. Gradle is automated build system that responsible for compilation of code, testing,
deployment, & conversion of file code into .dex files.

LESSON 6 (CREATING YOUR FIRST ADNROID APP)


Creating your first Android Project

• To create an Android Application, you need to create an Android project first. To do that, you need to open the
Android Studio IDE.
• To create a project from the main window, just click the File Menu > New > Project.
• The first window will ask the developer to select a Project Template.
o The Phone and Tablet tab shows a collection of templates that are commonly used or created when
creating an application for phones and tablets.
 These templates include Blank Activity, Bottom Navigation Activity, Empty Activity, Fullscreen
Activity, Google AdMob Ads Activity, Google Maps Activity, Login Activity, Master/Detail Flow,
Navigation Drawer Activity, Settings Activity, Scrolling Activity, Tabbed Activity, Fragment Activity,
and Native C++.
• The first window will ask the developer to select a Project Template.
o The Wear OS tab shows a few templates for creating an application for wearable devices such as a
smartwatch.
• The first window will ask the developer to select a Project Template.
o The TV tab shows a template for creating an application for Android enabled Smart TV.
o The Automotive tab shows few templates for making an application for Smart Car or Android enabled car
dashboard.
o Lastly, the Android Things tab shows a template for creating an application for Android enabled smart
devices.
• From Phone and Tablet tab, select an Empty Activity template since this is your first time to create an Android
Application after selecting click the "Next" button to proceed.
• The next window will ask you to Configure the Project. The window will ask for some crucial information before
the project is created.
o The Name is what the Name of the Application would be. By default, its value is "My Application. “
o The Package Name is used to identify the package of your application within your Android Studio
Environment.
o The Package Name is used to identify the package of your application within your Android Studio
Environment.
o The Save location is where the project would be saved when created. You can change it by clicking the
folder icon on the right side of the input box.
o The language is the programming language that you will use to write yourapplication.
o The Minimum SDK is the value of the API of which version of Android would be the least your application
could run to.
o You may also implement backward compatibility features by enabling the "Use legacy android.support
libraries" at the bottom of the Language field.
o When everything was set correctly, click the "Finish" button. If you need to change something from the
previous window, click the "Previous" button.
o When the project was successfully loaded, the image provided is the default window that you will see.
o On the editor window, we see that two projects were created automatically and opened by default.
These projects are the MainActivity.java and the activity_main.xml.
• MainActivity.java
o The MainActivity.java serves as the backend of the MainActivity. It is the file responsible for creating a
window, drawing the frontend UI or the activity_main.xml, and the controller the UI.
 Line 1 of the code below indicates the package name.
 Line 3 indicates the required files, such as a library for our project.
 Line number 7 to 14 shows the MainActivity class, which is the main class that represents your
first activity.
 Line 9 to 14 indicates that we are overriding the onCreate() method.
 Line 11 is a prerequisite code to initiate the primary method of the onCreate.
 Line 12 contains the method setContentView(View).
• main_activity.xml
o drawing the frontend UI or the activity_main.xml
 Line 1 of the code indicates the XML declaration. This declaration will identify that this file is an
XML file.
 From line 2 to line 18 indicates the root element of the XML file. By default, the root element is a
Constraint Layout.
 Line 9 to 16 of the code indicates the element. This view is responsible for displaying a text in an
activity.
 There are a bunch of attributes included in the Text View activity, but we will focus on Line 12 of
the code. On the line, we can see the attribute "text" with a value of "Hello World!". The code
means that the TextView element has a visible text showing Hello World! TextView will be
further discussed in Unit 3 of this module.

CREATING AN ANDROID VIRTUAL DEVICE

• We need an Android enabled device to run our Android Application. This device could be an actual device or a
virtual device that can run on your computer.
• To create a new virtual android device, click the AVD Manager button located on the right side of the Toolbar.
• After clicking the button, the AVD Manager window will appear. On that window, all of your created virtual
devices will be listed.
• To create a virtual device, click the "+ Create Virtual Device..." button located at the lower left part of the AVD
Manager window.
• After clicking the button, the Virtual Device Configuration window will appear. On this window, a set of pre-
created devices with different hardware and software specifications will be listed and group by device category.
These categories are the following: TV, Phone, Wear OS, Tablet, and Automotive.
• There are three different options to create a virtual device. The first option is to select and use an existing
hardware profile from the list. The second is to create or import a new hardware profile then use it as the
selected specification. Lastly, clone an existing hardware profile from the list, edit its specification, then select or
use it as the bases if the virtual device to be created.
• After selecting, click the "Next" button located at the bottom part of the window.
• After clicking the button, a new window will appear. This new window will ask you to select a system image from
the list.
• A system image is a copy of a version of an Android Operating System that you can install to a virtual device.
• After selecting a system image and you want to proceed, click the "Next" button. After clicking the button, a new
window will appear that will ask you to verify the device configuration. There is also a button located below the
settings portion of the window that will allow you to show the advanced settings of the device.
• In the last window, you will be asked to name your virtual device. You will also be asked to verify the hardware
profile and the system image of the device.
• In addition, you can also set the Orientation of the device from Portrait to Landscape, set the emulated graphic
performance such as Automatic, Hardware, or Software, and enable or disable the Device Frame.
• Aside from those basic settings, you can also access the Advanced Settings of the device by clicking the "Show
Advanced Settings" button. After clicking the button, the hidden settings will appear.
• You can now also set the Camera of the device. The Camera was categorized into two, the front or the selfie
camera and the back or the rear Camera. You can set the values of each Camera to None, Emulated,
VirtualScene, or Webcam.
• The network option also appears in which you can set the speed and latency of the network of the virtual device.
For the speed, you can select from different options such as LTE, HSDPA, and many more.
• The Emulated Performance was expanded. You will now have a choice to set the Boot Option of the device from
Cold boot, which will reboot your device from the start each time you open it, and Quick boot, which will load
your device in running condition when you open it.
• You can also select the number of CPU Core your device from two to four when you enabled the Multi-Core CPU
option.
• The Emulated Performance was expanded. You will now have a choice to set the Boot Option of the device from
Cold boot, which will reboot your device from the start each time you open it, and Quick boot, which will load
your device in running condition when you open it.
• You can also select the number of CPU Core your device from two to four when you enabled the Multi-Core CPU
option.
• The Memory and Storage option will also become available, which will allow you to set the RAM, VM Heap,
Internal Storage, and SD card of the device. The RAM is the memory that the device will use to run the
applications.
• An additional option was shown on the Device Frame settings that allows you to select a custom skin from a list.
You can also create your own custom skin if you like by clicking the "How do I create a custom hardware skin?"
link.
• Lastly, the option to enable or disable keyboard input also becomes accessible.
• Once all of the settings were set, you can now click the "Finish" button to proceed.
• Your new device will now be added to the list of the devices that Android Studio can use.
• If you wish to delete a device, click the down arrow from the Actions column and select Delete. After clicking the
Delete, you will be asked to confirm the deletion of the device.
• Aside from the delete option, you can also duplicate the device, wipe the data of the device, reboot the device,
display the device on the disk, view the details of the device, and stop the device when it is running.
• To test and launch the Virtual Device that you created, click the Play button on the Actions column.
• If you encounter an error message like "The emulator process for AVD name was killed." Your computer might
not be able to handle the virtual device weather the computer has no RAM available or no Storage available.

RUNNING YOUR ANDROID APP

• Once you created the virtual machine, you can now run your first Android Application. Before running the
application, you must select which module do you want to run from your current project. By default, a project
has only one module.
• After that, select an Android Virtual Device from the option beside the module selection option from the Toolbar.
You can select your newly created device from there.
• Finally, click the play button beside the option for selecting an AVD from the Toolbar.
• After clicking the button, the emulator should start if it is not running. The application will be installed on the
device and will run when the installation was complete, and no errors are encountered.
• You can also run your application in a real Android Device. Before we start, we need to enable the USB
Debugging option of the device first. To do that, go to the Settings option of your device. Look for the Developer
Option from the list the settings.
• There is a high possibility that you will not be able to locate the Developer Option because it is hidden by default.
• To unhide the option, go to the Software Information of your device. From there, look for the Build number then
tap it seven times or more until a toast message appears saying that the Developer Option was enabled.
• From the Developers Option, look for the USB debugging setting, then enable it by toggling the toggle button.
• Once the USB Debugging was enabled, you can now connect your device to your computer via USB cable.
• If the phone asked for permission to allow USB debugging from your computer, just click allow.
• Once you granted permission for USB debugging, you may now be able to see your phone from the list of the
device from the Toolbar in which you can select to install and run your application.
• Select your device from the list, then click the play button. If no problem was encountered, your app will be
installed and run on that device.

LESSON 7 (INTRO TO VIEW & VIEWGROUP)


VIEW IN ANDROID

• building block that represents UI of your app, occupies rectangular area in app.
• (child), this child responsible for event handling & creating interactive UI.
A. Text:
o Text View – UI that utilized to set & show Text/ content depending on user's needs.
o Plain Text – simple edit text that can input & edit different type of Text that app requires.
B. Note: manipulate plain Text in different types such password, e-mail, phone number, postal address,
multiline Text, time, date, number, etc.
C. Buttons:
o Button – perform an action every time user clicks it. Contains text view inside to inform user on what is
function of this button.
o Image button – displays image instead of Text, performs an action. Used in product selling apps.
o Checkbox – allows user to select one/ more options. Used in some type of form such registration form,
login form, exam, and quizzes. If user can choose one/ more answers based on question.
o Radio button – allows user to select one option. Used to determine single answer from list of choices.
Use Radio Group to ensure app can select one in options.
o Toggle button – or simply called a switch, allows you to control & change settings between two different
states (On/Off).
D. Widgets
o Image view – displays image/pictures, ex. Bitmap, png, drawables, etc., add UI more exciting. Use this as
pfp, product picture, an&d any other use depends on what app requires.
o Web view – display content of website inside your app. Can insert your own website, google/ any
website that need to put inside your app.
o Video view – display video file from your app.
o Calendar view – display & select date from calendar view.
E. Layouts: structure of your UI. Hierarchical structure of view & view groups in your app.
o Constraint layout – allows programmer to size & position widgets in flexible UI.
o Linear layout – arranges views into single row vertically & single columns in horizontal way.
o Frame layout – allows to block single area & display item in front of screen.
o Table layout – can arrange into rows a&nd columns, consists of number of table rows & column objects.
F. Containers
o Spinner – view that let user pick among listed item inside this child. Others call this drop-down box.
o Recycler view – flexible & combination of ListView & GridView. Holder utilized for showing large number
of data sets, & compare this view to scroll view. Maintain a limited number of views.
o Scroll view – allows view place within to be scrolled. Place only 1 direct child inside view.
G. Google
o Ad view – can set & display banner & ads in your app.
o Map view – can set & display map in your app, obtains data from google maps.
H. Legacy
o GridLayout – separated area view in cell, has thin lines, & infinite. Child views can added to Grid layout.
o GridView – two-dimensional, scrollable grid that shows items inside app, but items come from
ListAdapter.
o ListView – similar to scroll view. Display vertical & scrollable view, each view situated promptly
underneath past view in app. Difference of scroll view to listview, can only display same view in app.
o TabHost – container view that has tabs. Insert & manipulate fragments & Text inside tab host.
o RelativeLayout – where positions of children can be described in relation to each other or to parent.

You might also like