0% found this document useful (0 votes)
61 views

Introduction

This document provides information about a mobile application development course taught by Ms. Maryam Sajjad. It outlines the course objectives, learning outcomes, required background, and textbooks. The objectives are to introduce students to concepts of mobile development for Android applications, including understanding the application lifecycle, designing interfaces using layouts, and developing comprehensive systems using current trends. Students should have a basic knowledge of Java programming and data structures. Recommended textbooks cover topics like Professional Android Application Development and iOS Programming.

Uploaded by

mahrukhkhan702
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views

Introduction

This document provides information about a mobile application development course taught by Ms. Maryam Sajjad. It outlines the course objectives, learning outcomes, required background, and textbooks. The objectives are to introduce students to concepts of mobile development for Android applications, including understanding the application lifecycle, designing interfaces using layouts, and developing comprehensive systems using current trends. Students should have a basic knowledge of Java programming and data structures. Recommended textbooks cover topics like Professional Android Application Development and iOS Programming.

Uploaded by

mahrukhkhan702
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Mobile Application

Development
M S . M A RYA M S A J J A D
ROOM 207
CABIN 1
Course Description
Objective of mobile development is creating applications and any other kind of software specific
to mobile devices, including tablets.
Mobile development seeks to optimize functionality and user experience on mobile devices, as
there are important differences between mobile and desktop UX.
This course aims to introduce students to the following concepts and cognitive skills.
Course Learning Outcomes (CLOs)
CLO-1
Understand the life cycle of android applications
CLO-2
Design interactive interface for mobile applications using various layouts
CLO-3
Develop mobile applications for comprehensive systems using latest trends and
practices
Books
Text Books
 Professional Android Application Development, Reto Meier, Wrox Programmer to
Programmer, 3rd Edition (2014)
 iOS Programming: The Big Nerd Ranch Guide, Conway, J., Hillegass, A., & Keur, C., 5th Edition
(2015)

Reference Book
 Android Programming: The Big Nerd Ranch Guides, Phillips, B. & Hardy, B., 3rd Edition
(2017)
Required Background
Basic Java
Programming/OOP Data Structures
Knowledge

Android Application
Development
Android?
• mobile operating system maintained by Google
– originally purchased from Android, Inc. in 2005
• runs on phones, tablets, watches, TVs, ...
– based on Kotlin/Java(dev language) and Linux(kernel)

• the #1 mobile OS worldwide


– and now #1 overall OS worldwide!
• has over 1 million apps published in Play Store

• code is released as open source (periodically)


– easier to customize, license, pirate, etc. than iOS
Why develop for Android?
• Why not just write a web site? Android has a browser...
– better, snappier UI with a more consistent user experience
– able to use different kinds of widgets/controls than in a web page
– more direct access to the device's hardware (camera, GPS, etc.)
– users highly prefer apps over mobile web browsing
Why not IOS?
• Why not write apps for iOS, which runs on iPhones and iPads?
• free developer tools
– (Apple charges $$$ for theirs)

• familiar programming language


– (Java instead of Obj-C or Swift)

• more liberated app store


– (can make an app and put on your phone or others')

• Android has a larger install base


Why not IOS?
In terms of development:
• Portability
• Android Studio
• Google Play Store
• Low barrier of entry
• Profitability
• Market share
• …
Global market share held by leading
smartphone vendors

https://www.counterpointresearch.com/insights/global-smartphone-share/#
Mobile Application Development
Platform (MADP)
A mobile application development platform (MADP) is a type of software that allows a business
to rapidly build, test and deploy mobile apps for smartphones or tablets.
Mobile Application Development
Platform (MADP)
A mobile application development platform (MADP) is a type of software that allows a business
to rapidly build, test and deploy mobile apps for smartphones or tablets.

MADP providers include Appzillon, Flutter, Progress Kinvey, OutSystems, Salesforce, Apple
Xcode, Android Studio and Microsoft's Xamarin

Progress Kinvey offers cross-platform development for both iOS and Android, while Apple Xcode
and Android Studio only build apps in their respective environments. Flutter is Google's open
source offering and allows users to deploy apps in iOS, Android, Linux, macOS, and Windows
environments.
Mobile Application Development
Platform (MADP)
Mobile app development platforms are generally of 2 types;
Native app development platforms: These platforms are designed to build apps for a specific
mobile operating system, such as iOS or Android. Native app development platforms provide
access to native APIs and tools for creating apps that are optimized for performance and user
experience.
Cross-platform app development platforms: These platforms allow developers to create apps
that can run on multiple mobile operating systems using a single codebase. This can be a more
efficient and cost-effective option for companies that want to reach a wider audience without
creating separate versions of their app for each platform.
Cross-platform Mobile App
Development
Cross-platform mobile development is the process of building hybrid or native apps that can run
on multiple operating systems. A cross-platform tool automatically generates a code for the
target operating system, and developers can create a single code base from that.
Top 7 mobile app development platforms
1. Xamarin
2. Flutter
3. Cordova
4. Sencha
5. Unity
6. Ionic
7. React Native
8. NativeScript
Development Environments
• Most platforms have an SDK that you can download and build
• These platforms have an emulator that you can be used to test your apps
• Most emulators are configurable to match a variety of mobile devices
– Various screen sizes, memory limitations, tablets, etc.
Android Version History
Android 13
August 15, 2022

Android 14 (Upside Down Cake)


October 4, 2023

Android 15 (Vanilla Ice Cream)


Preview in February or March 2024
Installation & Setup
of Android
Step 1: Visit Android Developers Website
Step 2: Install JDK Version

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Step 3: Download Android Studio
(Complete Guide)

https://developer.android.com/studio
Step 4: Visit Android Developers Website
• Launch the .exe file you downloaded.

• Follow the setup wizard to install Android Studio and any necessary
SDK tools. On some Windows systems, the launcher script does not
find where the JDK is installed. If you encounter this problem, you
need to set an environment variable indicating the correct location.

• Select Start menu > Computer > System Properties > Advanced
System Properties. Then open Advanced tab > Environment
Variables and add a new system variable JAVA_HOME that points to
your JDK folder, for example C:\Program Files\Java\jdk1.8.0_77.

https://developer.android.com/guide/index.html

You might also like