Mobile Application
Mobile Application
Development
Mobile Application Development
cont…
What is meant by “Platform” in
computing?
• A computing platform is an environment in which a
piece of software
is executed.
• It may be the hardware or the operating
system (OS), even a
web
browser
interfaces, or
an
d
othe
r
associated application
programming underlying
software, as long as the
program code is executed with it.
Mobile Application Development
Platform
• There are 3 basic Mobile Application Development
Platforms (for developing native apps) currently
dominating the market:
1. Android (java/
kotlin)
2. iOS (objective-c/
swift)
3. Windows
(.Net)
• There are mobile operating systems that can
compete hand-in-hand with Android and
Apple’s iOS:
• Sailfish OS
• Tizen Open-Source OS (customization is
possible)
• Ubuntu Touch
• KaiOS
• Plasma OS
• PostmarketOS
• PureOS
• LineageOS
• Symbian OS
Mobile Application Development Platform
cont…
• Besides these 3 platforms there are two more possibilities:
1. Native apps android, iOS, Windows, etc.
2. Hybrid apps for all platforms altogether with
Xamarin, React Native, Ionic, etc.
3. Web apps as responsive versions of websites to work on
any mobile device.
Mobile Application Development Platform
cont…
Native Apps
• Such apps are developed for a single mobile operating
system exclusively, therefore they are “native” for a
particular platform or device.
• An app built for systems like iOS, Android, Windows
Phone, Symbian, Blackberry can not be used on a platform
other than their own.
• In other words, you won’t be able to use the Android app on
your iPhone.
Mobile Application Development Platform
cont…
Native Apps
• The main advantage of native apps is a high
performance
and ensuring good user experience.
• Native applications are distinctly accessible from app
stores of their kind and have a clear tendency to reach
target customers.
Mobile Application Development Platform
cont…
Native Apps
• Some cons to native apps are higher cost compared to other
types of apps; due to the need of creating app duplicates
for other platforms, separate support, and maintenance for
different types of apps resulting in the bigger product price.
Mobile Application Development Platform
cont…
Hybrid Apps
• They are built using multi-platform web
technologies (for example HTML5, CSS, and
Javascript).
• So-called hybrid apps are mainly website
applications disguised in a native wrapper.
• Apps possess the usual pros and cons of both native and
web mobile applications.
Mobile Application Development Platform
cont…
Hybrid Apps
• Hybrid multi-platform apps are fast and relatively
easy to develop – a clear advantage.
• Asingle code base for all platforms
ensures low-cost maintenance and smooth
updates.
• Widely used APIs, like gyroscope,
accelerometer, geolocation are
available.
Mobile Application Development Platform
cont…
Hybrid Apps
• On the other hand, hybrid applications lack in
performance, speed, and overall optimization in
comparison to native apps for instance.
• Also, there are certain design issues due to the app's
inability to look exactly the same way on two or more
platforms.
Mobile Application Development Platform
cont…
Web Apps
• These are software applications that behave in a
fashion similar to native applications.
• Web apps use a browser to run and are
usually written in HTML5, JavaScript, CSS, etc.
• Web applications require a minimum of device memory,
as a rule.
Mobile Application Development Platform
cont…
Web Apps
• As all personal databases are saved on a server, users can
get accessfrom any device whenever there is an internet
connection.
• That is why the use of web apps with the poor
connection would result in a bad user experience.
• The drawback is access to not that many APIs for
developers, with exception of geolocation and few
others.
Mobile Application Development Platform
cont…
Android
• Android is an open source and Linux-based Operating
System for mobile devices such as smartphones and tablet.
• Android offers a unified approach to application
development for mobile devices which means developers
need only develop for Android, and their applications
should be able to run on different devices powered by
Android.
Mobile Application Development Platform
cont…
Android
• The first beta version of the Android Software Development
Kit (SDK) was released by Google in 2007 where as the first
commercial version, Android 1.0, was released in September
2008.
• Google publishes most of the code (open source) under
the
Apache License version 2.0.
Mobile Application Development Platform
cont…
Android Versions
Mobile Application Development
Platform
cont… API Level
• API Level is an integer value that uniquely identifies
the framework API revision offered by a version of the
Android platform.
Mobile Application Development
Platform
cont… iOS
• iOS is Apple’s mobile OS that runs on an iPhone, iPad, iPod Touch
hardware.
• Apple provides tools and resources for creating iOS apps and
accessories for these devices.
• As an iOS developer, you can program in native languages such
as Swift or Objective-C or build cross-platform native
applications using React Native (JavaScript) etc.
Mobile Application Development
Platform
cont… iOS
• To develop iOS apps, you need a Mac computer running
the latest version of Xcode.
• Xcode is Apple’s IDE (Integrated Development Environment)
for both Mac and iOS apps.
• Xcode is the graphical interface you'll use to write iOS apps.
Mobile Application Development
Platform
cont… iOS
• Xcode includes the iOS SDK, tools, compilers, and frameworks
you need specifically to design, develop, write code, and debug
an app for iOS.
• For native mobile app developmenton iOS, Apple suggests
using the modern (2014) Swift programming language (the
old one is objective C).
• Itis important to note that Xcode only runs on Mac OS X and
the only supported way to develop iOS
apps.
Mobile Application Development
Platform
cont… iOS
Mobile Application Development
Platform
cont… iOS
• Xcode includes the iOS SDK, tools, compilers, and frameworks
you need specifically to design, develop, write code, and debug
an app for iOS.
• For native mobile app developmenton iOS, Apple suggests
using the modern (2014) Swift programming language (the
old one is objective C).
• Itis important to note that Xcode only runs on Mac OS X and
the only supported way to develop iOS
apps.

MobApp 01- Mobile Application Development Platform (1).pptx

  • 1.
  • 2.
  • 3.
  • 4.
    What is meantby “Platform” in computing? • A computing platform is an environment in which a piece of software is executed. • It may be the hardware or the operating system (OS), even a web browser interfaces, or an d othe r associated application programming underlying software, as long as the program code is executed with it.
  • 5.
    Mobile Application Development Platform •There are 3 basic Mobile Application Development Platforms (for developing native apps) currently dominating the market: 1. Android (java/ kotlin) 2. iOS (objective-c/ swift) 3. Windows (.Net) • There are mobile operating systems that can compete hand-in-hand with Android and Apple’s iOS: • Sailfish OS • Tizen Open-Source OS (customization is possible) • Ubuntu Touch • KaiOS • Plasma OS • PostmarketOS • PureOS • LineageOS • Symbian OS
  • 6.
    Mobile Application DevelopmentPlatform cont… • Besides these 3 platforms there are two more possibilities: 1. Native apps android, iOS, Windows, etc. 2. Hybrid apps for all platforms altogether with Xamarin, React Native, Ionic, etc. 3. Web apps as responsive versions of websites to work on any mobile device.
  • 7.
    Mobile Application DevelopmentPlatform cont… Native Apps • Such apps are developed for a single mobile operating system exclusively, therefore they are “native” for a particular platform or device. • An app built for systems like iOS, Android, Windows Phone, Symbian, Blackberry can not be used on a platform other than their own. • In other words, you won’t be able to use the Android app on your iPhone.
  • 8.
    Mobile Application DevelopmentPlatform cont… Native Apps • The main advantage of native apps is a high performance and ensuring good user experience. • Native applications are distinctly accessible from app stores of their kind and have a clear tendency to reach target customers.
  • 9.
    Mobile Application DevelopmentPlatform cont… Native Apps • Some cons to native apps are higher cost compared to other types of apps; due to the need of creating app duplicates for other platforms, separate support, and maintenance for different types of apps resulting in the bigger product price.
  • 10.
    Mobile Application DevelopmentPlatform cont… Hybrid Apps • They are built using multi-platform web technologies (for example HTML5, CSS, and Javascript). • So-called hybrid apps are mainly website applications disguised in a native wrapper. • Apps possess the usual pros and cons of both native and web mobile applications.
  • 11.
    Mobile Application DevelopmentPlatform cont… Hybrid Apps • Hybrid multi-platform apps are fast and relatively easy to develop – a clear advantage. • Asingle code base for all platforms ensures low-cost maintenance and smooth updates. • Widely used APIs, like gyroscope, accelerometer, geolocation are available.
  • 12.
    Mobile Application DevelopmentPlatform cont… Hybrid Apps • On the other hand, hybrid applications lack in performance, speed, and overall optimization in comparison to native apps for instance. • Also, there are certain design issues due to the app's inability to look exactly the same way on two or more platforms.
  • 13.
    Mobile Application DevelopmentPlatform cont… Web Apps • These are software applications that behave in a fashion similar to native applications. • Web apps use a browser to run and are usually written in HTML5, JavaScript, CSS, etc. • Web applications require a minimum of device memory, as a rule.
  • 14.
    Mobile Application DevelopmentPlatform cont… Web Apps • As all personal databases are saved on a server, users can get accessfrom any device whenever there is an internet connection. • That is why the use of web apps with the poor connection would result in a bad user experience. • The drawback is access to not that many APIs for developers, with exception of geolocation and few others.
  • 15.
    Mobile Application DevelopmentPlatform cont… Android • Android is an open source and Linux-based Operating System for mobile devices such as smartphones and tablet. • Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android.
  • 16.
    Mobile Application DevelopmentPlatform cont… Android • The first beta version of the Android Software Development Kit (SDK) was released by Google in 2007 where as the first commercial version, Android 1.0, was released in September 2008. • Google publishes most of the code (open source) under the Apache License version 2.0.
  • 17.
    Mobile Application DevelopmentPlatform cont… Android Versions
  • 18.
    Mobile Application Development Platform cont…API Level • API Level is an integer value that uniquely identifies the framework API revision offered by a version of the Android platform.
  • 19.
    Mobile Application Development Platform cont…iOS • iOS is Apple’s mobile OS that runs on an iPhone, iPad, iPod Touch hardware. • Apple provides tools and resources for creating iOS apps and accessories for these devices. • As an iOS developer, you can program in native languages such as Swift or Objective-C or build cross-platform native applications using React Native (JavaScript) etc.
  • 20.
    Mobile Application Development Platform cont…iOS • To develop iOS apps, you need a Mac computer running the latest version of Xcode. • Xcode is Apple’s IDE (Integrated Development Environment) for both Mac and iOS apps. • Xcode is the graphical interface you'll use to write iOS apps.
  • 21.
    Mobile Application Development Platform cont…iOS • Xcode includes the iOS SDK, tools, compilers, and frameworks you need specifically to design, develop, write code, and debug an app for iOS. • For native mobile app developmenton iOS, Apple suggests using the modern (2014) Swift programming language (the old one is objective C). • Itis important to note that Xcode only runs on Mac OS X and
  • 22.
    the only supportedway to develop iOS apps.
  • 23.
  • 24.
    Mobile Application Development Platform cont…iOS • Xcode includes the iOS SDK, tools, compilers, and frameworks you need specifically to design, develop, write code, and debug an app for iOS. • For native mobile app developmenton iOS, Apple suggests using the modern (2014) Swift programming language (the old one is objective C). • Itis important to note that Xcode only runs on Mac OS X and
  • 25.
    the only supportedway to develop iOS apps.