SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Mobile Cloud
                                   Speakers
       Michele Lepri                                           Emanuele Palazzetti
(http://michelelepri.blogspot.com)                         (http://www.emanuelepalazzetti.eu)



                                          4 july 2012

                     This work is distributed under Creative Commons license
Overview

●   Brief introduction about mobile evolution


●   The cloud and the "mobile world"


●   Major mobile platforms and their cloud services


●   Developing for the cloud


●   Android platform


●   Android Workshop (yes we build an app!)
Mobile (r)evolution!

●   Mobile devices are no longer "simple telephone". They are SMART!

●   Almost all new smartphones have wifi, geolocalization system (GPS),
    browser, camera, multimedia readers, etc...




Major mobile platforms:
●   iOS (Apple)

●   Windows Phone (Microsoft)

●   Bada (Samsung), Symbian (Nokia), etc ..

●   Android (Google)
The cloud in the mobile world


●   The cloud offers an invisible infrastructure capable to deliver some
    services (SaaS)


●   Some services you are using on a smartphone, are based on a cloud
    service (ex: email, storaging, etc...)


●   If the cloud handle user data, all his information can be accessed
    everywhere and every time


●   Documents, emails, images and many other data types, can be accessed
    even if mobile devices get broken or get lost
The cloud in the mobile world

●   The cloud offers high computational power so it can deliver some special
    services not usable in other way


●   You can use cloud map application to calculate quickly the shortest path
    from place A to place B


●   A device can records someone speaking in a different language and then
    send all raw data to a cloud service that takes care of translation (online
    translation is still in beta...but not for a awhile)


●   Cloud companies ensure availability, integrity, confidence and backup
    operation; the "only" problem is that you must trust them (warning:
    Linkedin)
iOS platform

●   All apps are developed with Objective-C language

●   To develop an apps, you should use an SDK that is available only on Mac
    OSX system, so you should buy an Apple Mac

●   You can download a free copy of Xcode (IDE) to develop your apps...

●   ...but to distribute or test your apps on a real device, you need to pay
    $99 as fees per developer license each year (Apple Developer Program)

●   For paid apps submitted in the AppStore, Apple will take 30% of the
    revenue

●   Apple will do many controls on your app before publish it in order to
    "approve" your app
iOS platform
iOS and iCloud

●   iCloud is the Apple cloud solution connected to your Apple devices (Mac,
    iPhone and iPad)

●   Storaging for all of your documents (iWork), videos, images and music

●   Extended services like file versioning (documents) and content delivery
    (images and videos push in all of your devices)

●   Integrated backup system in iOS so every device backup will be push to
    iCloud storage

●   Some other services like "Find my Phone / Mac" so you can retrieve your
    device if it get lost
Windows Phone


●   Based on Microsoft platform

●   Successor of Windows Mobile with intention to integrate the mobile
    environment with desktop environment (Windows 8)

●   Developement tool (there is a free version) Visual Studio .NET +
    Expression blend

●   You will reuse your .NET / Silverligth / C# skills

●   Market: "App Hub" $99 per year fee to sell apps, or 100 free apps upload
    with any cost or ... ehm.. the FAQ are quite complex ;)
Windows Phone
Windows Phone & Microsoft Cloud


●   Storaging cloud service for all documents, images, music and videos
    (SkyDrive)

●   Documents creation and editing with Microsoft Office 365 cloud service
    that is available also for mobile devices (Microsoft Office Web Apps)

●   Capability to develop application that can be deployed to Microsoft
    Windows Azure cloud platform (platform as a sevice); our application can
    run in a cloud environment so every smartphone can use it

●   Microsoft Dynamics let you to use a Customer Relationship Management
    software (CRM) with mobile devices
Android


●   The entire operative system and all built-in and third party apps are built
    with Java language

●   Eclipse is the most supported IDE thanks to a plugin with SDK and virtual
    devices managers

●   The SDK is open source and is available for all main operative systems

●   No license fees, no certification or registration required to develop your
    apps

●   More details later ...
Android and Google Cloud
●   Google Drive, also, offers an online data storaging and documents creation; you
    can create documents, spreadsheets, presentations and other things with
    advanced collaborative features (this presentation resides in Google Drive)


●   Device configuration and application backup can be pushed on Google Cloud
    Backup to restore all configuration in other Android devices (ex: Android tablets)


●   It integrates your mobile devices with Google Maps service enabling an online
    navigation system and with Google+ that allows you some exclusive social feature
    (ex: Google Hangout)


●   With Google App Engine, you can build powerful application using Java, JVM-
    compatibles (Groovy, Scala) or Python languages; you can even use Google
    BigTable data structures


●   Google offers Compute Engine to run large-scale computing workloads
Into the cloud: Google Goggles

●   It's a powerful "visual search"


●   You can take a picture of somethings like a books, landscapes, pictures
    and Google will tell you "what's this" and some other useful information
    (Google Knowledge Graph)


●   A great feature is that you can take a picture of some text written in a
    different language and translate it to your mother language


●   All these features are only available if you can use a huge and powerful
    cloud infrastructure; without a cloud and integrated services like search
    engine and translator, it's not possible to make things work!
Into the cloud: Google Goggles
Developing for the cloud

●   A developer can build applications using only hardware and data
    resources offered by a single device... it can be a huge limit!


●   Some services cannot exists without an infrastructure that collect and
    share data to everyone who is "connected" (ex: FourSquare or Twitter)


●   Cloud companies offer their infrastructure or platform as a service (ex:
    Amazon, Google App Engine, Red Hat OpenShift etc...)


●   Sometimes, we should build apps that use data or computational power
    offered by a cloud (ex: Google Maps)


●   We can build advanced mobile application that use the power of the
    cloud!
Why develop in a mobile platform?




●   The number of activated devices is around a billion and is still growing...

●   It is estimated that many people will prefer to use a smartphone rather
    than a desktop or notebook computer to do some tasks (ex: check email,
    social activity etc...)

●   The idea of telephone is drastically changed when they started to change
    people behaviour (ex: social activities)

●   Market?
Why develop in an Android platform?


●   It's a powerful mobile framework
●   Open source SDK
●   Good documentation both technical and generic
●   Growing community
●   If we want to distribute our application in Google Play Store (Android
    Market), we need to make just one payment of 25$ for an unlimited
    number of application
●   There are no complex system for app validation: most of "work" is
    delegated to the community

WAIT! It is possible to use Google API in order to integrate some Google
services like Maps, Locale and many others!
What is Android?



●   It's based on kernel Linux 2.6 and on 3.x from Ice Cream Sandwich
    version (Android > 4.0)
●   API used to build the Android system are the same that are used by
    developer
●   almost all of basic components can be replaced with your or 3rd party
    application (ex: Skype, Viber, WhatsApp, etc..). There are some
    exception to avoid security issues.
●   the code is open source released as Apache License 2.0 so telephone
    vendor doesn't need to pay royalties in order to use this operative system
    in their devices
The history of Android
●   Google acquired Android Inc. in 2005
●   In 2007 born the Open Handest Alliance (OHA): Motorola to Samsung, Vodafone T-Mobile, Intel
    from Texas Instruments
●   Target: open platform with no brakes and limits (royalty!)
●   Just in 2007 the first SDK (a sort of beta)
●   In 2008, the first 'real' device: the T-Mobile HTC G1
●   End of 2008 Google sells for $ 400 the "Dev Phone 1", to test the development and use of any
    app with no limit of data from phone operators
●   Curiosity: the ver. 1.1 forcing devices to have a physical keyboard!
●   Virtual keyboard in 1.5 (April 2009)
●   2.0 in 10/2009
●   2.3 in 12/2010: added support for XL screens (WXGA and above)
●   3.0 in 02/2011: optimized version for the tablet, new UI, hardware acceleration and multi-core
    processors support
●   4.0 in 10/2011: UI completely redesigned to integrate smart phones and tablet and a sea of ​
    system improvements
●   4.1 Jelly Bean: SDK is already available; the new version will be widespread in the mid of july
Android and Java

●   With Java there was no need to rewrite everything from scratch
    (language specification, compiler, debbugger, etc..)

●   Developers already have most of the required skills

●   Java philosophy is perfectly in keeping with the heterogeneous
    world of mobile (write one run everywhere)

●   Not using Java Micro Edition (J2ME) cause of royalty and
    performance indicator (it's 10 years old!) => Dalvik VM!

●   There are several standard Java lib (not AWT and Swing)
Android Architecture
Let's create our Android app!
Acknowledgments



●   Università degli studi di Perugia

●   Professor Alfredo Milani

●   Valentina Franzoni

●   .... all of you!
Credits



●   Book: "Professional Android 4 Development" [Reto Meier, Google Inc.]
●   http://www.wikipedia.org
●   http://juku.it/articles/mobile-e-cloud-computing.html
●   http://developer.android.com
●   http://create.msdn.com
●   https://developer.apple.com
●   http://www.google.com
Thanks you all!



 This work is distributed under Creative Commons license

Weitere ähnliche Inhalte

Was ist angesagt?

android architecture
android architectureandroid architecture
android architectureAashita Gupta
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming BasicsEueung Mulyana
 
TDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material designTDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material designJackson F. de A. Mafra
 
Sumbited by heena saini
Sumbited by heena sainiSumbited by heena saini
Sumbited by heena sainiSaini Heena
 
Android Technology
Android TechnologyAndroid Technology
Android TechnologyAmar Shah
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Javaamaankhan
 
Android-smartphones-userfriedly-google
Android-smartphones-userfriedly-googleAndroid-smartphones-userfriedly-google
Android-smartphones-userfriedly-googleSouvik Chakrabarti
 
chuckgaffney-resume-unity-2016-Recruiter-Note
chuckgaffney-resume-unity-2016-Recruiter-Notechuckgaffney-resume-unity-2016-Recruiter-Note
chuckgaffney-resume-unity-2016-Recruiter-NoteCharles Gaffney
 
Android.... (4.4 included)
Android.... (4.4 included)Android.... (4.4 included)
Android.... (4.4 included)ashish0019
 
Android terminologies
Android terminologiesAndroid terminologies
Android terminologiesjerry vasoya
 
Presentation On Android
Presentation On AndroidPresentation On Android
Presentation On AndroidTeachMission
 

Was ist angesagt? (20)

android architecture
android architectureandroid architecture
android architecture
 
Android report.
Android report.Android report.
Android report.
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
TDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material designTDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material design
 
Sumbited by heena saini
Sumbited by heena sainiSumbited by heena saini
Sumbited by heena saini
 
Android Technology
Android TechnologyAndroid Technology
Android Technology
 
Trilha Android - Android Evolved
Trilha Android - Android EvolvedTrilha Android - Android Evolved
Trilha Android - Android Evolved
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Java
 
Aandroid
AandroidAandroid
Aandroid
 
Android ppt
 Android ppt Android ppt
Android ppt
 
Android-smartphones-userfriedly-google
Android-smartphones-userfriedly-googleAndroid-smartphones-userfriedly-google
Android-smartphones-userfriedly-google
 
Android ppt
Android pptAndroid ppt
Android ppt
 
chuckgaffney-resume-unity-2016-Recruiter-Note
chuckgaffney-resume-unity-2016-Recruiter-Notechuckgaffney-resume-unity-2016-Recruiter-Note
chuckgaffney-resume-unity-2016-Recruiter-Note
 
Android Presentation [Final]
Android Presentation [Final]Android Presentation [Final]
Android Presentation [Final]
 
Android PPT
Android PPTAndroid PPT
Android PPT
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android.... (4.4 included)
Android.... (4.4 included)Android.... (4.4 included)
Android.... (4.4 included)
 
18th android intro
18th android intro18th android intro
18th android intro
 
Android terminologies
Android terminologiesAndroid terminologies
Android terminologies
 
Presentation On Android
Presentation On AndroidPresentation On Android
Presentation On Android
 

Andere mochten auch

Thesis MBIT Cloud computing
Thesis MBIT Cloud computingThesis MBIT Cloud computing
Thesis MBIT Cloud computingmgubbens
 
GCM with Pushbots
GCM with PushbotsGCM with Pushbots
GCM with PushbotsAshish RAj
 
Cloud computing report
Cloud computing reportCloud computing report
Cloud computing reportmanpreetgrewal
 
Android with cloud
Android with cloudAndroid with cloud
Android with cloudAshish RAj
 
Gcm presentation
Gcm presentationGcm presentation
Gcm presentationNiraj Singh
 
Android With Cloud
Android With CloudAndroid With Cloud
Android With CloudAshish RAj
 
The seminar report on cloud computing
The seminar report on cloud computingThe seminar report on cloud computing
The seminar report on cloud computingDivyesh Shah
 

Andere mochten auch (7)

Thesis MBIT Cloud computing
Thesis MBIT Cloud computingThesis MBIT Cloud computing
Thesis MBIT Cloud computing
 
GCM with Pushbots
GCM with PushbotsGCM with Pushbots
GCM with Pushbots
 
Cloud computing report
Cloud computing reportCloud computing report
Cloud computing report
 
Android with cloud
Android with cloudAndroid with cloud
Android with cloud
 
Gcm presentation
Gcm presentationGcm presentation
Gcm presentation
 
Android With Cloud
Android With CloudAndroid With Cloud
Android With Cloud
 
The seminar report on cloud computing
The seminar report on cloud computingThe seminar report on cloud computing
The seminar report on cloud computing
 

Ähnlich wie Mobile Cloud Apps

Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-pptSrijib Roy
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidSwapnali Pawar
 
Android os(comparison all other mobile os)
Android os(comparison all other mobile os)Android os(comparison all other mobile os)
Android os(comparison all other mobile os)DivyaKS12
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versionsindiangarg
 
Serverless computing with Google Cloud
Serverless computing with Google CloudServerless computing with Google Cloud
Serverless computing with Google Cloudwesley chun
 
Android v 1.1
Android v 1.1Android v 1.1
Android v 1.1Ravi Vyas
 
OS in mobile devices [Android]
OS in mobile devices [Android]OS in mobile devices [Android]
OS in mobile devices [Android]Yatharth Aggarwal
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxPoooi2
 
IT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit VIT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit Vpkaviya
 
Serverless Computing with Google Cloud
Serverless Computing with Google CloudServerless Computing with Google Cloud
Serverless Computing with Google Cloudwesley chun
 

Ähnlich wie Mobile Cloud Apps (20)

Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
 
Mobile app
Mobile appMobile app
Mobile app
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Android os(comparison all other mobile os)
Android os(comparison all other mobile os)Android os(comparison all other mobile os)
Android os(comparison all other mobile os)
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versions
 
Mobile Application development
Mobile Application developmentMobile Application development
Mobile Application development
 
Android based os
Android based osAndroid based os
Android based os
 
Android
AndroidAndroid
Android
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
Introduction to Android Environment
Introduction to Android EnvironmentIntroduction to Android Environment
Introduction to Android Environment
 
Serverless computing with Google Cloud
Serverless computing with Google CloudServerless computing with Google Cloud
Serverless computing with Google Cloud
 
Android v 1.1
Android v 1.1Android v 1.1
Android v 1.1
 
OS in mobile devices [Android]
OS in mobile devices [Android]OS in mobile devices [Android]
OS in mobile devices [Android]
 
Android Apps
Android AppsAndroid Apps
Android Apps
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptx
 
IT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit VIT6601 Mobile Computing Unit V
IT6601 Mobile Computing Unit V
 
Introduction to Android.ppt
Introduction to Android.pptIntroduction to Android.ppt
Introduction to Android.ppt
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Serverless Computing with Google Cloud
Serverless Computing with Google CloudServerless Computing with Google Cloud
Serverless Computing with Google Cloud
 

Kürzlich hochgeladen

Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 

Kürzlich hochgeladen (20)

Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 

Mobile Cloud Apps

  • 1. Mobile Cloud Speakers Michele Lepri Emanuele Palazzetti (http://michelelepri.blogspot.com) (http://www.emanuelepalazzetti.eu) 4 july 2012 This work is distributed under Creative Commons license
  • 2. Overview ● Brief introduction about mobile evolution ● The cloud and the "mobile world" ● Major mobile platforms and their cloud services ● Developing for the cloud ● Android platform ● Android Workshop (yes we build an app!)
  • 3. Mobile (r)evolution! ● Mobile devices are no longer "simple telephone". They are SMART! ● Almost all new smartphones have wifi, geolocalization system (GPS), browser, camera, multimedia readers, etc... Major mobile platforms: ● iOS (Apple) ● Windows Phone (Microsoft) ● Bada (Samsung), Symbian (Nokia), etc .. ● Android (Google)
  • 4. The cloud in the mobile world ● The cloud offers an invisible infrastructure capable to deliver some services (SaaS) ● Some services you are using on a smartphone, are based on a cloud service (ex: email, storaging, etc...) ● If the cloud handle user data, all his information can be accessed everywhere and every time ● Documents, emails, images and many other data types, can be accessed even if mobile devices get broken or get lost
  • 5. The cloud in the mobile world ● The cloud offers high computational power so it can deliver some special services not usable in other way ● You can use cloud map application to calculate quickly the shortest path from place A to place B ● A device can records someone speaking in a different language and then send all raw data to a cloud service that takes care of translation (online translation is still in beta...but not for a awhile) ● Cloud companies ensure availability, integrity, confidence and backup operation; the "only" problem is that you must trust them (warning: Linkedin)
  • 6. iOS platform ● All apps are developed with Objective-C language ● To develop an apps, you should use an SDK that is available only on Mac OSX system, so you should buy an Apple Mac ● You can download a free copy of Xcode (IDE) to develop your apps... ● ...but to distribute or test your apps on a real device, you need to pay $99 as fees per developer license each year (Apple Developer Program) ● For paid apps submitted in the AppStore, Apple will take 30% of the revenue ● Apple will do many controls on your app before publish it in order to "approve" your app
  • 8. iOS and iCloud ● iCloud is the Apple cloud solution connected to your Apple devices (Mac, iPhone and iPad) ● Storaging for all of your documents (iWork), videos, images and music ● Extended services like file versioning (documents) and content delivery (images and videos push in all of your devices) ● Integrated backup system in iOS so every device backup will be push to iCloud storage ● Some other services like "Find my Phone / Mac" so you can retrieve your device if it get lost
  • 9. Windows Phone ● Based on Microsoft platform ● Successor of Windows Mobile with intention to integrate the mobile environment with desktop environment (Windows 8) ● Developement tool (there is a free version) Visual Studio .NET + Expression blend ● You will reuse your .NET / Silverligth / C# skills ● Market: "App Hub" $99 per year fee to sell apps, or 100 free apps upload with any cost or ... ehm.. the FAQ are quite complex ;)
  • 11. Windows Phone & Microsoft Cloud ● Storaging cloud service for all documents, images, music and videos (SkyDrive) ● Documents creation and editing with Microsoft Office 365 cloud service that is available also for mobile devices (Microsoft Office Web Apps) ● Capability to develop application that can be deployed to Microsoft Windows Azure cloud platform (platform as a sevice); our application can run in a cloud environment so every smartphone can use it ● Microsoft Dynamics let you to use a Customer Relationship Management software (CRM) with mobile devices
  • 12. Android ● The entire operative system and all built-in and third party apps are built with Java language ● Eclipse is the most supported IDE thanks to a plugin with SDK and virtual devices managers ● The SDK is open source and is available for all main operative systems ● No license fees, no certification or registration required to develop your apps ● More details later ...
  • 13. Android and Google Cloud ● Google Drive, also, offers an online data storaging and documents creation; you can create documents, spreadsheets, presentations and other things with advanced collaborative features (this presentation resides in Google Drive) ● Device configuration and application backup can be pushed on Google Cloud Backup to restore all configuration in other Android devices (ex: Android tablets) ● It integrates your mobile devices with Google Maps service enabling an online navigation system and with Google+ that allows you some exclusive social feature (ex: Google Hangout) ● With Google App Engine, you can build powerful application using Java, JVM- compatibles (Groovy, Scala) or Python languages; you can even use Google BigTable data structures ● Google offers Compute Engine to run large-scale computing workloads
  • 14. Into the cloud: Google Goggles ● It's a powerful "visual search" ● You can take a picture of somethings like a books, landscapes, pictures and Google will tell you "what's this" and some other useful information (Google Knowledge Graph) ● A great feature is that you can take a picture of some text written in a different language and translate it to your mother language ● All these features are only available if you can use a huge and powerful cloud infrastructure; without a cloud and integrated services like search engine and translator, it's not possible to make things work!
  • 15. Into the cloud: Google Goggles
  • 16. Developing for the cloud ● A developer can build applications using only hardware and data resources offered by a single device... it can be a huge limit! ● Some services cannot exists without an infrastructure that collect and share data to everyone who is "connected" (ex: FourSquare or Twitter) ● Cloud companies offer their infrastructure or platform as a service (ex: Amazon, Google App Engine, Red Hat OpenShift etc...) ● Sometimes, we should build apps that use data or computational power offered by a cloud (ex: Google Maps) ● We can build advanced mobile application that use the power of the cloud!
  • 17. Why develop in a mobile platform? ● The number of activated devices is around a billion and is still growing... ● It is estimated that many people will prefer to use a smartphone rather than a desktop or notebook computer to do some tasks (ex: check email, social activity etc...) ● The idea of telephone is drastically changed when they started to change people behaviour (ex: social activities) ● Market?
  • 18. Why develop in an Android platform? ● It's a powerful mobile framework ● Open source SDK ● Good documentation both technical and generic ● Growing community ● If we want to distribute our application in Google Play Store (Android Market), we need to make just one payment of 25$ for an unlimited number of application ● There are no complex system for app validation: most of "work" is delegated to the community WAIT! It is possible to use Google API in order to integrate some Google services like Maps, Locale and many others!
  • 19. What is Android? ● It's based on kernel Linux 2.6 and on 3.x from Ice Cream Sandwich version (Android > 4.0) ● API used to build the Android system are the same that are used by developer ● almost all of basic components can be replaced with your or 3rd party application (ex: Skype, Viber, WhatsApp, etc..). There are some exception to avoid security issues. ● the code is open source released as Apache License 2.0 so telephone vendor doesn't need to pay royalties in order to use this operative system in their devices
  • 20. The history of Android ● Google acquired Android Inc. in 2005 ● In 2007 born the Open Handest Alliance (OHA): Motorola to Samsung, Vodafone T-Mobile, Intel from Texas Instruments ● Target: open platform with no brakes and limits (royalty!) ● Just in 2007 the first SDK (a sort of beta) ● In 2008, the first 'real' device: the T-Mobile HTC G1 ● End of 2008 Google sells for $ 400 the "Dev Phone 1", to test the development and use of any app with no limit of data from phone operators ● Curiosity: the ver. 1.1 forcing devices to have a physical keyboard! ● Virtual keyboard in 1.5 (April 2009) ● 2.0 in 10/2009 ● 2.3 in 12/2010: added support for XL screens (WXGA and above) ● 3.0 in 02/2011: optimized version for the tablet, new UI, hardware acceleration and multi-core processors support ● 4.0 in 10/2011: UI completely redesigned to integrate smart phones and tablet and a sea of ​ system improvements ● 4.1 Jelly Bean: SDK is already available; the new version will be widespread in the mid of july
  • 21. Android and Java ● With Java there was no need to rewrite everything from scratch (language specification, compiler, debbugger, etc..) ● Developers already have most of the required skills ● Java philosophy is perfectly in keeping with the heterogeneous world of mobile (write one run everywhere) ● Not using Java Micro Edition (J2ME) cause of royalty and performance indicator (it's 10 years old!) => Dalvik VM! ● There are several standard Java lib (not AWT and Swing)
  • 23. Let's create our Android app!
  • 24. Acknowledgments ● Università degli studi di Perugia ● Professor Alfredo Milani ● Valentina Franzoni ● .... all of you!
  • 25. Credits ● Book: "Professional Android 4 Development" [Reto Meier, Google Inc.] ● http://www.wikipedia.org ● http://juku.it/articles/mobile-e-cloud-computing.html ● http://developer.android.com ● http://create.msdn.com ● https://developer.apple.com ● http://www.google.com
  • 26. Thanks you all! This work is distributed under Creative Commons license