CPET 565/499 Mobile Computing Systems

 

Developing Cloud-based Mobile Apps

Nov. 24, 2014

 

Topics

·         HTML, CSS, JavaScript

·         Serverside JavaScript,

·         Types of Mobile Apps

o   Mobile web apps: Use web browsers

§  Cross-platform

§  Standards compliant

§  Lower cost, rapid development

§  Low friction deployment

o   Purely native apps

§  Objective-C for iPhone

§  Java for Android

o   Hybrid native apps

·         Using Web Content

§  Intent.ACTION_VIEW(), uri.parse()

o   Customizing a Web Browser

§  WebView

§  Native Internet-based app:

·         HTTP Get to retrieve XML or JSON data, Google REST API (Representational State Transfer)

·         HTTP Post

 

 

References

·         The Mobile Web Is Dead, It’s All About Apps, by Jay Yarow, April 1, 2014, http://www.businessinsider.com/the-mobile-web-is-dead-its-all-about-apps-2014-4

·         Mobile Apps are Killing the Free Web, Handing a Censored Duopoly to Google and Apple, by Jim Edwards, April 7, 2014, http://www.businessinsider.com/mobile-web-vs-app-usage-statistics-2014-4

·         Apps and Mobile Web: The State of the Debate, by Joe Laszio, May 7, 2014, http://www.clickz.com/clickz/column/2343327/apps-and-mobile-web-the-state-of-the-debate

·         Mobile Website vs. Mobile App: What’s the Difference, by Sara Angeles, July 15, 2014, http://www.businessnewsdaily.com/6783-mobile-website-vs-mobile-app.html

·         W3C Mobile Web Initiative, http://www.w3.org/Mobile/

·         Standards for Web Applications on Mobile: Current State and Roadmap, http://www.w3.org/Mobile/mobile-web-app-state/

·         The Android Developer’s Cookbook, 2nd  Ed, by Ronan Schwarz, Phil Duston, James Steels, and Nelson To, published by Addison Wesley, pp. 263-274

·         Android Wireless Application Development Volume II: Advanced Topics, 3rd Edition, by Lauren Darcey and Shane Conder, published by Addison Wesley, pp. 183-196

·         The WebKit Open source project, https://www.webkit.org/

o   Android

o   iPhone

·         jQuery Mobile, http://jquerymobile.com/

o   Demos, http://jquerymobile.com/demos/

·         http://nodejs.org

·         Apache Cordova for building Mobile Apps using HTML and JavaScript, http://cordova.apache.org/

·         Best Practice for Web Apps, https://developer.android.com/guide/webapps/best-practices.html

·         Server-Side JavaScript, http://en.wikipedia.org/wiki/Comparison_of_server-side_JavaScript_solutions

·         Beginning Mobile Application Development in the Cloud, Richard Rodger, Wrox.com, http://www.wrox.com/WileyCDA/WroxTitle/Beginning-Mobile-Application-Development-in-the-Cloud.productCd-1118034694,descCd-DOWNLOAD.html

 

Web Apps, https://developer.android.com/guide/webapps/index.html

·         Web browser-based

·         Android client-side application (WebView framework)

 

package android. WebKit, https://developer.android.com/reference/android/webkit/package-summary.html

·         javascriptInterface, https://developer.android.com/reference/android/webkit/JavascriptInterface.html

·         Interfaces

o   DownloadListener

o   GeolocationPermissions.Callback

o   PluginStub

o   ValueCallback<T>

o   WebView.PictureListener, https://developer.android.com/reference/android/webkit/WebView.PictureListener.html

o   WebChromeClient.CustomViewCallback

o   WebResourceRequest, https://developer.android.com/reference/android/webkit/WebResourceRequest.html

o   WebStorage.QuotaUpdater, https://developer.android.com/reference/android/webkit/ValueCallback.html

o   WebView.FindListener

o   WEbView.PictureListener

·         Classes

o   ClientCertRequest

o   ConsoleMessage

o   CookieManager

o   CookueSyncManager

o   DateSorter

o   GeolocationPermissions

o   HttpAuthHandler

o   JsPromptResult

o   JsResult

o   MimeTypeMap

o   PermissionRequest

o   SslErrorHandler

o   URLUtil

o   WEbbackForwardList

o   WebChromeClient, https://developer.android.com/reference/android/webkit/WebChromeClient.html

o   WebChromeClient.FileChooserParams

o   WebHistoryItem

o   WebIconDatabase

o   WebResourceResponse

o   WebSettings

o   WebStorage

o   WebStorage.Origin

o   WebView

o   WebView.HitTestResult

o   WebView.WEbViewTransport

o   WebViewClient

o   WebViewDatabase

o   WebViewFragment

 

Best Practice for Web Apps, https://developer.android.com/guide/webapps/best-practices.html

·         Redirect mobile devices to a dedicated mobile version of your web site

·         Use a valid markup DOCTYPE that’s appropriate for mobile devices

·         Use viewport meta data to properly resize your web page

·         Avoid multiple file request

·         Use a vertical linear layout