mobile technologies

25
1 Mobile Technologies

Upload: sarankumar-rajagopal

Post on 28-Jan-2015

654 views

Category:

Technology


1 download

DESCRIPTION

Mobile technology is the technology used for cellular communication. Mobile code division multiple access (CDMA) technology has evolved rapidly over the past few years. Since the start of this millennium, a standard mobile device has gone from being no more than a simple two-way pager to being a mobile phone, GPS navigation device, an embedded web browser and instant messaging client, and a handheld game console. Many experts argue that the future of computer technology rests in mobile computing with wireless networking. Mobile computing by way of tablet computers is becoming more popular. The most popular tablet at the moment is the iPad, by Apple. Tablets are available on the 3G and 4G networks.

TRANSCRIPT

Page 1: Mobile technologies

1

Mobile Technologies

Page 2: Mobile technologies

History of Phones

2

Alexander Graham Bell (1876)

Page 3: Mobile technologies

Everyday life‘s tools

3

Computer

Email

Fax

Radio

Music player

Word processor Credit cards

Page 4: Mobile technologies

Everyday life‘s tools

4

Computer

Email

Fax

Radio

Music player

Word processor

Smart phone

Mobile phones are first introduced in mid 1980s

Additional features can be installed

Page 5: Mobile technologies

Mobile applications

• Banking (check balance, make transaction)• Restaurant (order and payment)• Mobile Payment (ticket, vending machine)• Tourism: tourist guide• Education: mobile learning• Entertainment: interactive digital art• Scientific: controlling and monitoring

5

There are Many types of mobile operating systems (OS) are available for Smartphone’s, that including: Android, BlackBerry OS, webOS, iOS, Symbian, Windows Mobile, Bada, etc.Among the most popular are the Apple iPhone, Android, and blackberry.

Mobile Operating System

Page 6: Mobile technologies

6

Up-Coming Mobile OS

• Aliyun OS from Alibaba/AliCloud (cloud based)• BlackBerry 10 from RIM• Firefox OS from non-profit organization Mozilla

Foundation (open source, GPL)• Tizen from non-profit organization The Linux

Foundation (open source, GPL) Logo’s

Page 7: Mobile technologies

Mobile Operating System

• Android from Google Inc.(free and open source)• Bada from Samsung Electronics (closed source,

proprietary)• BlackBerry OS from RIM (closed source, proprietary)• iOS from Apple Inc. (closed source, proprietary, on top

of open source Darwin core OS)• S40 (Series40) from Nokia (closed source, proprietary)• Symbian OS from Nokia and Accenture (open public

license)• Windows Phone from Microsoft (closed source,

proprietary)

7

Top Five Worldwide Total Mobile Phone Vendors, Q1 2012

Rank Manufacturer Shipments Year-over-year Change

1 Samsung 42.2% 267.0%

2 Apple 35.1% 88.7%

3 Nokia 11.90% -50.8%

4 RIM 9.70% -29.7%

5 HTC 6.9% -23.3%

  Others 39.1% 59.6%

Page 8: Mobile technologies

Market share

8

Page 9: Mobile technologies

iOS - Introduction

• iOS is Apple’s mobile operating system derived from Mac OS X. Developed originally for iPhone it has since been shipped on the iPod Touch and iPad as well.

• In iOS, there are four abstraction layers:• The core OS layer, The core services layer, The Media layer, The

Cocoa touch layer.• The iPhone SDK contains the code, information and tools which

need to develop, test, run, debug and the applications for iOS.• The Xcode tools provide the basic editing, compilation, and

debugging environment for the code, Xcode also provides the launching point for testing applications

9

Page 10: Mobile technologies

Company/developer Apple inc.Programming C,C++,Objective-COS family Mac OS X/UNIX likeKernel Type Hybrid (Darwin)Default user interface Cocoa Touch (MultiTouch, GUI)Supported Platforms ARM(iPhone, iPod Touch and iPad)

10

• The release of Xcode 3.1, Xcode is the development environment for the iOS SDK. IPhone applications, like iOS and OS X, are written in Objective-C, Action Script, Xcode, Flash Builder, Flash, Photoshop, Blender, Eclipse, Java, Microprocessor programming (Propeller, BASIC, and PIC), Cocoa, Agile, Usability, Web Services, JavaScript, jQuery, Social Web Trends and MXML. IOS based on cloud called has iCloud

iOS – Development Tools

Page 11: Mobile technologies

11

Cocoa in the architecture of iOS

The application-framework layer of iOS is called Cocoa Touch.

Page 12: Mobile technologies

IPhone SDK - New Project

12

Page 13: Mobile technologies

• Android is Based on Linux Kernel.• Developed by Google and later open Handset Alliance.• Open Source under the Apache 2 License.• Android is kernel based on the Linux kernel 2.6 and Linux

Kernel 3.x (Android 4.0 onwards), with middleware, libraries and APIs written in C, C++, Java. Architecture: ARM, MIPS, Power Architecture, x86. Package manager: APK.

13

Android OS - Google

Page 14: Mobile technologies

14

Android - System Architecture

Page 15: Mobile technologies

• BlackBerry OS developed by Research in Motion (RIM).• The BlackBerry platform is perhaps best known for its native support for

corporate email, through MIDP 1.0 and, more recently.• A subset of MIDP 2.0, which allows complete wireless activation and

synchronization with Microsoft Exchange, Lotus Domino, or Novell GroupWise email, calendar, tasks, notes, and contacts, when used with BlackBerry Enterprise Server. The operating system also supports WAP 1.2.

• The OS provides support for Java MIDP 1.0, WAP 1.2. Kernel type: Java virtual machine

• Third-party developers can write software using the available BlackBerry API classes, although applications that make use of certain functionality must be digitally signed.

• C++ Standard Library or Java API contained in the JDK or JRE, of one of the editions of the Java Platform. The three editions of the Java Platform are Java ME (Micro edition), Java SE (Standard edition), and Java EE (Enterprise edition).

• APIs are defined according to a Java Specification Request (JSR), and sometimes some of these APIs are later included in the core APIs of the platform (the most notable example of this kind is Swing)

15

BlackBerry OS

Page 16: Mobile technologies

16

Java virtual machine

Page 17: Mobile technologies

• Windows Phone is a family of mobile operating systems developed by Microsoft

• Microsoft created a new user interface, featuring its design language called Modern Style UI.

• Metro is an internal code name of a typography-based design language created by Microsoft, originally for use in Windows Phone 7. Early uses of the Metro principles began as early as Microsoft Encarta 95 and MSN 2.0, and later evolved into Windows Media Center and Zune.

• Package manager: Zune Software, from various independent developers made using XNA Game Studio or OpenZDK, which use C# and C++ respectively

• Kernel type: Monolithic (Windows CE) (Windows Phone 7), Hybrid (Windows NT) (Windows Phone 8)

• Supported platforms: Qualcomm Snapdragon (Based on ARM V.7 or later)

17

Windows Phone

Page 18: Mobile technologies

18

Monolithic kernel - Windows Phone

Page 19: Mobile technologies

• Symbian switched to using standard C++ with Qt as the main SDK, which can be used with either Qt Creator or Carbide.c++.

• Qt supports the older Symbian/S60 3rd (starting with Feature Pack 1, aka S60 3.1) and Symbian/S60 5th Edition (aka S60 5.0) releases, as well as the new Symbian platform. It also supports Maemo and MeeGo, Windows, Linux and Mac OS X

• Application development can be done using Python (see Python for S60), Adobe Flash Lite or Java ME.

• Symbian devices can also be programmed using Python, Java ME, Flash Lite, Ruby, .NET, Web Runtime (WRT) Widgets and Standard C/C++. Visual Basic programmers can use NS Basic to develop apps for S60 3rd Edition and UIQ 3 devices.

19

Symbian

Page 20: Mobile technologies

20

Monolithic kernel - Symbian

Page 21: Mobile technologies

21

Comparison of Mobile OSFeature iOS Android webOS

WindowsMobile

Windows PhoneBlackBerry

OS

Company Apple

Open Handset Alliance/ Google

Palm, Inc (HP)

Microsoft Microsoft RIM

OS Family Darwin Linux LinuxWindows CE 5.2

Windows CE 7 / Windows NT 8

Mobile OS

Supported CPU Arch

ARM

ARM, MIPS, Power Architecture, x86

ARM ARM ARM ARM

ProgramC, C++, Objective-C

C, C++, Java CMany, C++, .NET, Lazarus

7+: XNA(.NET C#), Silverlight, native C/C++(only for vendors and partners) 8+: XNA(.NET C#), VB.NET, Silverlight, native C/C++, WinRTP (XMLA), DirectX

Java

Package manager

iTunes APK

App Catalog (Official)Preware (3rd party homebrew)

Windows Mobile Device Center/ ActiveSync

Zune SoftwareBlackBerry Desktop Manager

Page 22: Mobile technologies

• Search Code for Android:• Android, brightcove, Kernal, Aurasma, Java, Node.js, Ruby, UX,

OOD, C/C++, Linux kernel modules, JEE, Web Services, Apache, AJAX, Javascript, jQuery, HTML5, JSON, REST, XML, SOAP, SVN, cloud computing, EC2, JavaScript, Maven, ant, Hudson, SVG, VML, hybrid, CISSP, J2ME, Brew, NDKs/SDKs, XSD, API, Sql, XSD, Tapestry, spring, Objective-C, OOD, SQLite, Test-Driven Development(TDD) Python, Django, HTML/CSS, Javascript, Node.js, jQuery UI, JS, IDE, MATLAB

• Search Code for iOS:• Objective-C, Action Script, Xcode, Flash Builder, Flash,

Photoshop, Blender, Eclipse, Java, Microprocessor programming (Propeller, BASIC, and PIC), Cocoa, Agile, Usability, Web Services, JavaScript, jQuery, Social Web Trends and MXML. IOS

22

Search String

Page 23: Mobile technologies

Job Title: Mobile DeveloperLocation: Philadelphia, PA 

• Strong background in mobile design patterns, HTML and Javascript• Experience developing with iPhone SDK, Cocoa, Interface Builder,

Objective-C and Xcode OR Eclipse, Java and Android Libraries• Familiarity with using Web APIs and with Cross Platform Mobile

Development techniques is a plus • Experience with mobile video or commerce is highly desired• Experience creating pure native iOS, Android apps.• Solid understanding and hands on programming in any object

oriented languages like JAVA, C++.• Proficient in web development, AJAX, Javascript, jQuery and HTML5• Experience developing mobile apps using PhoneGap and/or Sencha

Touch• Solid understanding of JSON, REST, XML and SOAP• Involved with all aspects of the software development lifecycle:

Design, Documentation, Implementation, Delivery, etc.• Experience with source control like SVN is a plus

23

JD - iOS Developer

Page 24: Mobile technologies

Job Title: Sr Mobile Apps Developer - iPhone/iOSLocation: San Francisco, CA

Qualifications• Experience developing Mobile Applications using Native and Web

technologies• Strong experience with iOS (Android a plus). Proven ability in iOS

development• 3+ years of experience with shipping Mobile Apps.• Expert experience with Objective-C• Strong experience in HTML5, JavaScript, Jquery, Node.js,

Backbone.js and other Mobile Web technologies• Experience creating and consuming REST web services with JSON

output.• Experience building rich client-side applications based on REST APIs • Experience with Java and Android development is a huge plus• Experience with multiple mobile platforms highly preferred• Strong grasp of CS fundamentals, algorithms, data structures, and

design patterns

24

JD - iOS Developer

Page 25: Mobile technologies

Job Title: Sr. Android Software EngineerLocation: San Jose, CARequired Skills:• Expert experience in Android application development.• 7+ years of experience in software development (design and

implementation).• Delivered killer apps to a huge user base.• Proficient with Java/C++.• Strong Android SDK experience.• Ability to understand and Parse XML, JSON and Serialized data..• Ability to work in a fast paced, iterative development environment

with short turn-around times.• Advanced software architecture and design skills, including object

oriented design.• Strong communication skills with the ability to understand and

explain technical issues to a non-technical audience.• Familiarity with fundamental web and mobile technologies (HTML5,

CSS, and JS etc) is a plus.

25

JD – Android Developer