Top Banner
Fall 2015 Professor: Miguel V. Martin, PhD, PEng Mobile Web Programming Chapter 3: Browsers and Web Platforms Notes extracted from “Programming the Mobile Web” by M. Firtman, O’Reilly, 2013.
23
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Chapter 3 - Browsers and Web Platforms

Fall 2015

Professor: Miguel V. Martin, PhD, PEng

Mobile Web ProgrammingChapter 3: Browsers and Web PlatformsNotes extracted from “Programming the Mobile Web” by M. Firtman, O’Reilly, 2013.

Page 2: Chapter 3 - Browsers and Web Platforms

• Web Platforms that Are Not Browsers• Mobile Browsers

Chapter 3. Browsers and Web Platforms

2

Page 3: Chapter 3 - Browsers and Web Platforms

• Browser-based websites or web apps• HTML5 apps• Web views• Native web apps• Ebooks

Web Platforms that Are Not Browsers

3

Page 4: Chapter 3 - Browsers and Web Platforms

• iOS web apps. From a mobile website to a full-screen HTML5 app

Web Platforms that Are Not Browsers: HTML5 Web Apps

4Source: Firtman, 2013

Page 5: Chapter 3 - Browsers and Web Platforms

• Chrome apps (a.k.a. packaged apps)– Supported for desktop and notebook– Available on Windows, Mac, Linux, and

Chrome OS through the Chrome Web Store

– Android TBA…

Web Platforms that Are Not Browsers: HTML5 Web Apps

5

Page 6: Chapter 3 - Browsers and Web Platforms

• Firefox open web apps– Supported on all Firefox platforms

(desktops, tablets, and smartphones)– Available through the Mozilla Marketplace

Web Platforms that Are Not Browsers: HTML5 Web Apps

6

Page 7: Chapter 3 - Browsers and Web Platforms

• Symbian standalone web apps– Similar to iOS web apps!

Web Platforms that Are Not Browsers: HTML5 Web Apps

7

Page 8: Chapter 3 - Browsers and Web Platforms

• S40 web apps– For mid-range device series, Series 40– Cloud-based apps distributed through the

Nokia Store

Web Platforms that Are Not Browsers: HTML5 Web Apps

8

Page 9: Chapter 3 - Browsers and Web Platforms

• Samsung web API– SDK to create apps for smartphones and

smart TVs using web technologies and a JavaScript API

–Supports mobile web apps, TV web apps, and convergence web apps which interwork between a Samsung smartphone and a TV

Web Platforms that Are Not Browsers: HTML5 Web Apps

9

Page 10: Chapter 3 - Browsers and Web Platforms

• A web view is a component inside a native app which allows for the embedding of web content– E.g., Twitter app

Web Platforms that Are Not Browsers: Web Views

10

Source: Firtman, 2013

Page 11: Chapter 3 - Browsers and Web Platforms

• A pseudo-browser is a web view from the operating system

Web Platforms that Are Not Browsers: Pseudo-Browsers

11

Source: Firtman, 2013

Page 12: Chapter 3 - Browsers and Web Platforms

• One approach is to develop them using web technologies (HTML, CSS, JavaScript) but package them as native applications so they can be distributed through the stores

• Another approach is to combine native UI components with only some parts in a web view, with JavaScript logic

• OSs that support the creation of packages that can be distributed as native apps while being developed using HTML5:– Blackberry WebWorks, Windows 8 HTML5

apps, Tizen apps, Symbian WRT, QtWebKit, Ubuntu for mobile apps

Web Platforms that Are Not Browsers: Native Web Apps, Packaged Apps, and Hybrids

12

Page 13: Chapter 3 - Browsers and Web Platforms

• OSs that support the creation of packages that can be distributed as native apps while being developed using HTML5:– Blackberry WebWorks, Windows 8 HTML5 apps, Tizen apps,

Symbian WRT, QtWebKit, Ubuntu for mobile apps

• Apache Cordova and Adobe PhoneGap– PhoneGap was the first to offer a multiplatform solution for

native web development. It was acquired by Apache and donated to the Apache Foundation under the name Apache Cordova

• Sencha Touch– Includes a native packager for iOS and Android for Windows and

Mac developers

• Appcelerator Titanium– Allows the creation of iOS, BB, and Android native web apps. It

converts JavaScript to native code

Web Platforms that Are Not Browsers: Native Web Apps, Packaged Apps, and Hybrids

13

Page 14: Chapter 3 - Browsers and Web Platforms

• New ebook readers support HTML5 and web content based on different formats such as EPUB3 or Kindle Format 8

• So, we can create interactive ebook experiences with HTML, CSS, and JavaScript

Web Platforms that Are Not Browsers: Ebooks

14

Page 15: Chapter 3 - Browsers and Web Platforms

• Safari on iOS. WebKit-based, bundled with iOS. It doesn’t follow the same versioning as Safari desktop

• Android browser. Android OS used to include AB (up to 4.0, Ice Cream Sandwich). AB is WebKit-based too. Google Chrome for Android is replacing the AB

• Google Chrome. Since Android OS 4.1 (Jelly Bean) it is the bundled browser. One of the best HTML5 browsers in the market. The iOS version uses the same user agent name as Safari adding a string called CriOS!

Mobile Browsers: Preinstalled Browsers

15

Page 16: Chapter 3 - Browsers and Web Platforms

• Amazon Silk. Kindle Fire family. Based on the Android browser. Proxy browser which does parsing in some Amazon servers delivering compressed results to the browser

• Internet Explorer. One of the first mobile browsers in the market. Uses their own proprietary engine called Trident

• Nokia Browser for Series 40. Designed for feature phones. Focus navigation. Based on Nokia’s own rendering engine

• Nokia Browser for Symbian. Supports HTML5. Designed for S60s

• Nokia Browser for MeeGo. Not many devices support it

Mobile Browsers: Preinstalled Browsers (Cont’d.)

16

Page 17: Chapter 3 - Browsers and Web Platforms

• webOS Browser. Bundled with the HP OS. WebKit-based• BlackBerry Browser. WebKit-based• UC Browser. #1 browser in the Chinese market (#2 in India).

Cloud-based browser supporting full HTML and JavaScript. Works in some 3,000 different mobile device models including Android, Symbian, BlackBerry, Windows Phone, and the iPhone

• Samsung Dolfin & Jasmine. WebKit-based bundled with the Bada OS. Installed on social devices and supports HTML5. Jasmine is meant for low-end devices, based on proprietary engine

• NetFront. For low-end and mid-range devices including phones, digital TVs, printers, and game consoles. Preinstalled on Sony Ericsson, Lg, Samsung, and ZTE devices as well as in Amazon Kindle, PlayStation 3, and Nintendo 3D. Supports HTML5

Mobile Browsers: Preinstalled Browsers (Cont’d.)

17

Page 18: Chapter 3 - Browsers and Web Platforms

• Tilt mode feature of NetFront

Mobile Browsers: Preinstalled Browsers (Cont’d.)

18Source: Firtman, 2013

Page 19: Chapter 3 - Browsers and Web Platforms

• Others: – LG Phantom. WebKit-based– Myriad Browser. Formerly Openware– Obigo Browser. Used to have 14% of the

market before the smartphone revolution in 2007

– Legacy mobile browsers: MicroB for Maemo, Sony Mobile

– Motorola Mobile. It renders documents up to 10 KB

Mobile Browsers: Preinstalled Browsers (Cont’d.)

19

Page 20: Chapter 3 - Browsers and Web Platforms

• Opera Mobile• Opera Mini (proxy browser). 194

million users in October 2012

Mobile Browsers: User-Installable Browsers

20Source: Firtman, 2013

Page 21: Chapter 3 - Browsers and Web Platforms

• Firefox. Updated in sync with the desktop version. Uses same Gecko engine as the desktop version. Preinstalled in the Firefox OS

• Dolphin. Not to be confused with Samsung’s Dolfin. WebKit-based. One of the top HTML5 scores

• Baidu Browser. Most used browser in China. WebKit-based

• SkyFire. For Android and iOS. Transcodes nonmobile documents to make them mobile compatible

Mobile Browsers: User-Installable Browsers

21

Page 22: Chapter 3 - Browsers and Web Platforms

22

Source: Firtman, 2013

Page 23: Chapter 3 - Browsers and Web Platforms

• M. Firtman, Programming the Mobile Web, O’Reilly, 2013. Ch. 3.

Further Reading

23