ITP 140 Mobile Technologies. Mobile Topics

Similar documents
ITP 342 Mobile App Development. APIs

ITP 342 Mobile App Development. APIs

ITP 342 Mobile App Dev

Develop Mobile Front Ends Using Mobile Application Framework A - 2

AWS Mobile Hub. Build, Test, and Monitor Your Mobile Apps. Daniel Geske, Solutions Architect 31 May 2017

REST API Developer Preview

G, William James. The smartphone & tablet have changed the course of real estate

CIS 408 Internet Computing. Dr. Sunnie Chung Dept. of Electrical Engineering and Computer Science Cleveland State University

Develop and test your Mobile App faster on AWS

CLOUD COMPUTING. A public cloud sells services to anyone on the Internet. The cloud infrastructure is made available to

Cloud Computing. An introduction using MS Office 365, Google, Amazon, & Dropbox.

Oracle Mobile Hub. Complete Mobile Platform

SMEStorage Open Clou d

Build Meeting Room Management Website Using BaaS Framework : Usergrid

Developing Enterprise Cloud Solutions with Azure

DuncanPowell RESTRUCTURING TURNAROUND FORENSIC

RESTful Services. Distributed Enabling Platform

Developing Microsoft Azure Solutions (70-532) Syllabus

5 KEY REASONS FOR USING TELERIK PLATFORM MBAAS

Kony MobileFabric. Release Notes. On-Premises. Release 6.5. Document Relevance and Accuracy

Marketing & Back Office Management

BLACKBERRY SPARK COMMUNICATIONS PLATFORM. Getting Started Workbook

Developing Microsoft Azure Solutions (70-532) Syllabus

Developing Microsoft Azure Solutions (70-532) Syllabus

Setting up your Netvibes Dashboard Adding a Blog to your Dashboard

ITP 140 Mobile Technologies. Build vs. Buy

Data Controller and Owner. Types of Data collected. Mode and place of processing the Data. Privacy Policy of aimedis.com. Methods of processing

Faculté Polytechnique

Technology in Action Complete, 13e (Evans et al.) Chapter 3 Using the Internet: Making the Most of the Web's Resources

CS371m - Mobile Computing. Persistence - Web Based Storage CHECK OUT g/sync-adapters/index.

Connect and Transform Your Digital Business with IBM

FAQs. Business (CIP 2.2) AWS Market Place Troubleshooting and FAQ Guide

Using Deep Links for Growth. Phillip Nelson Director of Product, Quixey

INTRODUCTION TO CLOUD STORAGE

Back-end architecture

The Ultimate Digital Marketing Glossary (A-Z) what does it all mean? A-Z of Digital Marketing Translation

Introduction To Cloud Computing

History and Backgound: Internet & Web 2.0

Lesson 5 Nimbits. Chapter-6 L05: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

Protecting your Data in the Cloud. Cyber Security Awareness Month Seminar Series

Learning Management System (LMS) + Content Management System (CMS)

WELCOME Mobile Applications Testing. Copyright

Chapter 002 The Internet, the Web, and Electronic Commerce

Build Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS)

WHITE PAPER. Good Mobile Intranet Technical Overview

ReST 2000 Roy Fielding W3C

Copyright 2014 Blue Net Corporation. All rights reserved

If you re a Facebook marketer, you re likely always looking for ways to

Web 2.0, AJAX and RIAs

Help Me! A Consumer Product Assistance Application

by SUBSPLASH ENGAGE YOUR AUDIENCE

Part 1. Learn how to collect streaming data from Twitter web API.

Internet Applications. Q. What is Internet Explorer? Explain features of Internet Explorer.

How Carriers Are Redefining the Mobile App Store Ecosystem

Introduction to Cloud Computing

EEC-682/782 Computer Networks I

SOCIAL LOGIN FOR MAGENTO 2 USER GUIDE


Managing and Auditing Organizational Migration to the Cloud TELASA SECURITY

Naresh Information Technologies

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE

Real Estate Mobile App Features

UVA HPC & BIG DATA COURSE. Cloud Computing. Adam Belloum

Homework 9: Stock Search Android App with Facebook Post A Mobile Phone Exercise

Progressive Web App (PWA) Features

Security of End User based Cloud Services Sang Young

KEY BENEFITS OF A TIKILIVE NETWORK

The Mainframe: The Latest Disruptive Technology in Cloud. Frank J. De Gilio (IBM) Rich Jackson (Walmart) Randy Frerking (Walmart) Jeff Bisti (IBM)

Startups and Mobile Apps on AWS. Dave Schappell, Startup Business Development Manager, AWS September 11, 2013

Seminar report Google App Engine Submitted in partial fulfillment of the requirement for the award of degree Of CSE

Web-APIs. Examples Consumer Technology Cross-Domain communication Provider Technology

Large-Scale Web Applications

CHEM-E Process Automation and Information Systems: Applications

Web Architecture Review Sheet

AQU Information Systems Fundamentals Spring 2012 Pg. 9.1

Jargon Buster. Ad Network. Analytics or Web Analytics Tools. Avatar. App (Application) Blog. Banner Ad

PEOPLE PEOPLE. Dynamic profiles of all your people, with info captured from anywhere. Includes followups & targeting.

HTML 5 and CSS 3, Illustrated Complete. Unit M: Integrating Social Media Tools

Social Media Login M2 USER MANUAL MAGEDELIGHT.COM SUPPORT E:

/ Cloud Computing. Recitation 7 October 10, 2017

Release Notes Release (December 4, 2017)... 4 Release (November 27, 2017)... 5 Release

January, Asian Animation, VFX & Games Industry Strategies, Trends & Opportunities. digital.vector. Animation, VFX & Games Market Research

Oracle Responsys. Release 18B. New Feature Summary ORACLE

ORACLE APPLICATION EXPRESS, ORACLE REST DATA SERVICES, & WEBLOGIC 12C AUTHOR: BRAD GIBSON SENIOR SOLUTIONS ARCHITECT ADVIZEX

Part 3: Online Social Networks

Mobile Services Category Team (MSCT) Advanced Technology Academic Research Center (ATARC) Mobile Backend as a Service (MBaaS) Working Group Document

Qlik Analytics Platform

Beam Technologies Inc. Privacy Policy

Privacy Policy. Last Updated: August 2017

AWS Lambda: Event-driven Code in the Cloud

Chapter 3. E-commerce The Evolution of the Internet 1961 Present. The Internet: Technology Background. The Internet: Key Technology Concepts

INTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary

NEW STRATEGIES FOR EFFECTIVE

Using the Cloud Howard Verne 7/10/2013

MOBILE APPLICATIONS AND CLOUD COMPUTING. Roberto Beraldi

Chat Connect Pro Setup Guide

Chronos Fitness, Inc. dba Chronos Wearables, 1347 Green St. San Francisco CA 94109,

Zombie Apocalypse Workshop

Architectural Overview INSIGHT Remote Monitoring Platform

Feature List. I Feature List

Transcription:

ITP 140 Mobile Technologies Mobile Topics

Topics Analytics APIs RESTful Facebook Twitter Google Cloud Web Hosting 2

Reach We need users! The number of users who try our apps Retention The number of users who repeatedly use our apps Revenue Make money!

Example - Zynga Finding Revenue in Retention by Mark Pincus http://developers.facebook.com/blog/post/204/ 1. Focus on retention Fun game play is a core element Allowing users to interact with the bulk of your product for free A small portion of hardcore users will generate most of your income 2. Have a mixed revenue stream 33/33/33 split among banner advertising, direct user pay, and CPA offers Build something people are willing to pay for, keep them around so they will pay for it, and give them as many ways to pay as possible 4

Analytics Definition The science of analysis The process of obtaining an optimal or realistic decision based on existing data Software libraries/services to collect data about my application Track events defined by the app author Report some events automatically Service (usually web-based) to present the analytics data 5

Metrics Acquisition and user metrics Examples: downloads and new users Engagement metrics Examples: retention, crashes, and conversion Outcome metrics Examples: app sales and in-app purchases 6

Metrics DAU daily active users MAU monthly active users DAU/MAU daily active users / monthly active users 20% is great! ARPU average revenue per user ARPPU average revenue per paying user 7

Analytics Providers Flurry http://www.flurry.com Merged with Pinch Media Leader in the mobile application analytics category Google SDK http://code.google.com/mobile/analytics/docs/iphone/ Grab Analytics https://analytics.grab.com Localytics http://www.localytics.com/ Medialets http://www.medialets.com/ 8

API Application Programming Interface (API) A specification intended to be used as an interface by software components to communicate with each other An API is usually related to a software library An API can also be related to a software framework An API can also be an implementation of a protocol The practice of publishing APIs has allowed web communities to create an open architecture for sharing content and data between communities and applications 9

REST Representational state transfer (REST) is a style of software architecture for distributed hypermedia systems such as the World Wide Web Conforming to the REST constraints is referred to as being RESTful RESTful web service (or RESTful web API) is a simple web service implemented using HTTP and the principles of REST It is a collection of resources with 4 defined aspects 10

REST Philosophy The 3 most important features of a RESTful server are its statelessness, uniform resource identification, and cacheability. Statelessness Every API is treated as a new request, and no client context is remembered on the server. Resource identification Done through URLs Cacheability Allows clients to cache responses based on the URL 11

REST Philosophy Response from a RESTful server is usually sent in a uniform, agreed-upon format, usually to decouple the client/server interface. The client ios app communicates with a RESTful server through this agreed-upon data exchange format. The most commonly used formats are XML and JSON. 12

XML XML stands for extensible Markup Language Designed to transport and store data Uses tags Has a root node http://www.w3schools.com/xml/default.asp <?xml version="1.0" encoding="utf-8"?>! <note>! <to>jason</to>! <from>trina</from>! <heading>reminder</heading>! <body>bring home some milk!</body>! </note>! 13

JSON JSON stands for JavaScript Object Notation Is a lightweight text-data interchange format Is "self-describing" and easy to understand http://www.w3schools.com/json/ {! }! "employees": [! { "firstname":"trina", "lastname":"gregory" },! { "firstname":"poojan", "lastname":"jhaveri" },! { "firstname":"pranali", "lastname":"jhaveri" }! ]! 14

15

RESTful Web Services The base URI for the web service, such as http://example.com/resources/ The Internet media type of the data supported by the web service Often JSON (JavaScript Object Notation), XML (Extensible Markup Language) or YAML but can be any other valid Internet media type The set of operations supported by the web service using HTTP methods (e.g., GET, PUT, POST, or DELETE) The API must be hypertext driven 16

REST Services Many web sites are now offering their facilities through REST Web Services REST Services can be used to access sites that perform the following functions: Web Search (e.g.yahoo s BOSS Search, Google Custom Search) Geolocation (e.g Yahoo s Placefinder) Photo Sharing (e.g. Yahoo s Flickr, Google s Picasa) Social Networking (e.g. Facebook, Twitter, MySpace) Mapping (e.g. Google Maps) Many of these services limit daily usage by a single website, and require payment when the thresholds are breached 17

REST Services Access is provided using one or both of these methods: Direct URL, returning a response in one or more formats (XML, JSON, PHP) Library-based APIs, embedded in JavaScript, Java, C#, Objective-C and other source and binary library formats Many of these services now require or include OAuth user authentication Oauth is a standard for clients to access server resources on behalf of a resource owner E.g. see http://en.wikipedia.org/wiki/oauth 18

Facebook https://developers.facebook.com/mobile/ Things you can do: Login with Facebook Fetch User Data Publish to Feed Send Requests 19

Twitter https://dev.twitter.com Embedded Timelines Make it easy to syndicate any public Twitter timeline to your website with one line of code You can embed a timeline for Tweets from an individual user, a user s favorites, Twitter lists, or any search query or hashtag Twitter Cards Attach media experiences to Tweets that link to your content Embedded Tweets Allows websites to generate copy and paste-able HTML markup to render a Tweet on any third-party website 20

REST API Twitter https://dev.twitter.com/docs/api Provides simple interfaces for most Twitter functionality Streaming APIs https://dev.twitter.com/docs/streaming-apis A family of powerful real-time APIs for Tweets and other social events 21

Available at: http:// developers.google.com APIs available for: Google+ Android App Engine Chrome Games Google Maps Google Apps Google TV Commerce YouTube Google APIs 22

Twilio http://www.twilio.com Brings voice and messaging to your web and mobile applications A cloud communications IaaS (Infrastructure as a Service) company Allows software developers to programmatically make and receive phone calls and send and receive text messages using its web service APIs Twilio's services are accessed over HTTP and are billed based on usage As of October 2012, more than 150,000 developers use the service Make phone calls to anywhere in the world They use geographically distributed datacenters to connect with carriers around the globe Send text messages to anywhere in the world Connected to over 1,000 mobile carriers globally Send messages in whatever language your users speak In June 2010 Twilio launched OpenVBX An open source product that lets business users configure phone numbers to receive and route phone calls 23

Cloud Storage Instead of data residing on a local storage device, it is stored online for you in large data centers Data is typically synced to multiple hard drives by the storage provider Data is pushed by the internet to multiple devices Becoming very popular with enterprises and companies 24

Cloud Storage Advantages Pricing directly related to the amount stored No wasted space Data is synced across multiple devices by the cloud provider Typically no data loss Disadvantages You do not control your data Security & Privacy Issues Encryption becomes very important If the provider is compromised (hacked), then your data is compromised 25

Cloud Storage Providers 26

Cloud Computing Layers 27

Cloud Computing SaaS software as a service "on-demand software" or "application service providers" (ASPs) Software and associated data are centrally hosted on the cloud PaaS platform as a service Cloud providers deliver a computing platform typically including operating system, programming language execution environment, database, and web server IaaS infrastructure as a service Offer computers - physical or (more often) virtual machines - and other resources 28

Cloud Computing BaaS backend as a service Mobile backend as a service (MBaaS) A model for providing web and mobile app developers with a way to link their applications to backend cloud storage while also providing features such as user management, push notifications, and integration with social networking services These services are provided via the use of custom software development kits (SDKs) and application programming interfaces (APIs) The global BaaS market had an estimated value of $216.5 million in 2012 29

Cloud Services Cloud Services covers a variety of hosting services: Application Hosting (e.g. AWS, Google App Engine, FireHost, Microsoft Azure) Backup and Storage ( e.g. AWS) Content Delivery (e.g. Netflix hosted by AWS) E-commerce (Amazon.com e-commerce) Media Hosting (e.g. Microsoft Azure, RackSpace, Streaming Media Hosting) DNS Protection Services (e.g., CloudFlare) Consumer Cloud Storage (e.g. Apple icloud. Dropbox, Microsoft SkyDrive, Google Drive) Access is provided using one or both of these methods: Dashboard Library-based APIs, embedded in Java, C#, Objective-C and other binary library formats All these services are commercial services that require monthly payments The consumer cloud services provide limited, free basic storage 30

Cloud Companies Amazon Web Services (AWS) http://aws.amazon.com rackspace the open cloud company http://www.rackspace.com Windows Azure http://www.windowsazure.com HP Cloud Services https://www.hpcloud.com Google Cloud Platform http://cloud.google.com 31

Mobile App Development Back-end as a service Database, login info, data for each user Back-end Tools Firebase Parse StackMob Kinvey