• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Overview of Mobile Development Platforms
 

Overview of Mobile Development Platforms

on

  • 1,875 views

Presentation given to the Phoenix Android Users Group; May 2010.

Presentation given to the Phoenix Android Users Group; May 2010.

Statistics

Views

Total Views
1,875
Views on SlideShare
1,849
Embed Views
26

Actions

Likes
1
Downloads
81
Comments
0

2 Embeds 26

http://www.slideshare.net 25
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Expected to hit 5 billion this year ?Billion cell phones
  • Development community Large development community support will be critical to create new applications, and continue to innovate Hardware resource control(memory, battery) Battery and memory critical to successful platform, and it is a balancing act to allow developer access to core system, while keeping them from bring the phone to its knees; Many developers today don’t concern themselves with hardware constraints Internet for the masses One Phone per child Many 3 rd world countries currently emerging as important markets, and cell phones will be their first exposure to the intenet Location Awareness These applications are emerging as extremely important; There will likely be a lot of innovation around this space in particular The war will be won with apps http://www.buzzmachine.com/2010/04/04/ipad-danger-app-v-web-consumer-v-creator/ Vendor Ecosystems “ At Davos, Eric Schmidt said that phones will be defined by their apps. The mobile (that is to say, constantly connected) war will be won on apps.” -Pressure from operators to lower the price of devices will drive some established players to seek out new sources of revenue from content and services sold to end users. -Application Distribution Channels iPhone App store is going gangbusters (heard 30 Million downloads in first month) This will be an important factor in the various mobile platforms success -It will also be important to easily be able to extend the mobile phones features – people will be hanging onto their mobile devices longer, so will need to be able to easily upgrade them OS will drive industry Phones themselves are cookie cutter (same brick with touchscreen interface, GPS, wifi, etc); To a large extent, how they utilize the OS to make use of the features, will be what differentiates them between one another Sync is hard Critical component of Platform Mobile Me failure testament to difficulty of accomplishing this Enderle believes that developers are ultimately going to embrace whichever platform or platforms promise a good return on their development efforts. “At the end of the day, developers want to make money,” he says. “So they’re going to develop on a platform and put resources on a platform that will make them money.”
  • http://metrics.admob.com/2010/04/45-million-us-smartphone-users-comscore/
  • The iPhone has over 180,000. Android has over 68,000. webOS has, as of right this second, 1,812 -April 19, 2010 from Mobile Crunch As of February 23, 2010 from http://blog.distimo.com/2010_02_our-presentation-from-mobile-world-congres-2010-mobile-application-stores-state-of-play/ iPhone 151000 Android 50000 Palm 2000 Blackberry 5000 Nokia 6000 Windows 700
  • Key components: connectivity and security The BlackBerry® development platform has been designed with two key components in mind: connectivity and security -Meaning “Multimedia” is not part of their core focus Blackberry development done in Java Eclipse plugin available OS 4.6 current version (came out on Storm) OS 5.0 no release date announced App Store mostly uninspired Enterprise Integration best in business “ Blackberry enterprise suite” part of infrastructure – costs money for each user, and significant part of RIMs strategy Blackberry Suite on Windows Mobile Shown at MWC Been promised (and shown) for years now – since 2007
  • http://na.blackberry.com/eng/developers/appworld/faq.jsp BlackBerry Web Plug-in The BlackBerry® Web Plug-in allows developers to create, debug and package up browser-based content and BlackBerry Widgets for the BlackBerry smartphone. The BlackBerry Web Plug-in v2.0 Beta 1 includes the BlackBerry Widget Packager v1.0 Beta 2, a BlackBerry smartphone simulator and the BlackBerry Email and Connectivity Simulator. To take advantage of new features in the BlackBerry Widget Packager v1.0 Beta 3, first install the BlackBerry Web Plug-in below and then download the appropriate file from the BlackBerry Widget Packager v1.0 Beta 3 page. Note: with the move to the next version of the BlackBerry® Plug-in for Microsoft® Visual Studio® 1.2 and the BlackBerry® Web Development Plug-in for Eclipse® 1.0, the name of these tools is being changed to the BlackBerry Web Plug-in. The new name will make it easier to find and use the BlackBerry Application Platform tools. BlackBerry Web Plug-in v2.0 Beta 1 Downloads Download the BlackBerry Web Plug-in tool based on your development environment. There’s a BlackBerry Web Plug-in for Eclipse® 3.4 and a BlackBerry Web Plug-in for Microsoft® Visual Studio® 2008. Before downloading either tool, download the Sun JDK 1.6 or higher If you downloaded the BlackBerry Widget Packager v1.0 Beta 1, you’ll need to uninstall it through the Microsoft® Control Panel -> Add or Remove Programs panel before you proceed with downloading either of the BlackBerry Web Plug-in tools Note: the tool is supported on Windows® XP or Windows Vista™ (32-bit) and not currently supported for 64-bit operating systems and Windows 7. BlackBerry Web Plug-in for Eclipse For Eclipse 3.4, there are 2 download options: Use the update site to download and install the components directly into an Eclipse install. To see available components, add the following URL into the Eclipse update manager: http://www.blackberry.com/go/eclipseUpdate/3.4/web Learn how to install the BlackBerry Web Plug-in for Eclipse Update Site Download the BlackBerry Web Plug-in for Eclipse v2.0 Beta 1 with Eclipse 3.4 (One exe file, which includes the BlackBerry Web Plug-in for Eclipse v2.0 Beta 1 with the Eclipse IDE, which is licensed under the Eclipse Public License and the Eclipse Foundation Software User Agreement ( View Eclipse legal resources ). All other software provided in the package or on this page is governed by the BlackBerry SDK License Agreement distributed with the software.) BlackBerry Web Plug-in for Microsoft Visual Studio For Microsoft Visual Studio 2008: Note: if you’ve already installed the BlackBerry Plug-in for Microsoft Visual Studio v1.1, this newer version will install over top of it. If you want to keep v1.1, don’t install the v2.0 Beta 1. Download the BlackBerry Web Plug-in for Microsoft Visual Studio v2.0 Beta 1 Technical Requirements Operating System: Windows XP or Windows Vista (32-bit) Java®: Java 1.6 Eclipse: Eclipse 3.4.1, EMF 2.4.1, WTP 3.0.3 Microsoft Visual Studio: minimum requirement Microsoft Visual Studio 2008 (Service Pack 1) Standard Edition Note: 64-bit operating systems and Windows 7 aren't currently supported. Deployment Tool (only required when deploying on a physical device) You’ll need code signing keys to enable your application to run on a physical device. Documentation View and download product documentation, including Installation and Configuration Guides, Development Guides and Release Notes: BlackBerry Web Development Plug-in for Eclipse documentation BlackBerry Plug-in for Microsoft Visual Studio documentation
  • iPhone 3G is successful Environment is closed -SDK is Apple only, OSX 10.5 to boot, Object C is probably accessible for .NET developers with minimal effort. -Developers Access to distribution – costs $99 to join developer network, and if you sell an app, you must give %30 of you profit to Apple but make no mistake: this is a private party at Apple's house. They can be as picky as they want about who they let in, and they can ask you to leave at any time. But once you get in, as long as you behave yourself Apple wants you to have a good time. -Jobs blesses everything that goes on the phone – nothing gets on phone before it passes Steve’s approval; While I resist that kind of control, I actually understand, as it is important to maintain the integrity of the hardware I understand this for same reasons as above (control over hardware to maintain integrity) Developer limited from modifying core applications- no background processing, no interpreted language runtimes developers not allowed to switch out core functions like contacts apps, or browser Facebook has a really nice iPhone application, and I've even heard it said that it could "almost" physically replace the iPhone Contact book . I understand this for same reasons as above (control over hardware to maintain integrity) Gadgets platform – Apple owns their platform and sees themselves as responsible for the user experience, period. They restrict what applications can do and what they can access accordingly, so as to maintain the quality of that user experience according to their standards NDA for iPhone SDK needs to be lifted – no developer access to forums, books about developing, etc The SDK includes both Instruments and Shark, tools which allow measurement and some very fine grained profiling of where all your cycles are going. This includes how much time is spent in the core libraries.
  • iPhone 3G is successful Environment is closed -SDK is Apple only, OSX 10.5 to boot, Object C is probably accessible for .NET developers with minimal effort. -Developers Access to distribution – costs $99 to join developer network, and if you sell an app, you must give %30 of you profit to Apple but make no mistake: this is a private party at Apple's house. They can be as picky as they want about who they let in, and they can ask you to leave at any time. But once you get in, as long as you behave yourself Apple wants you to have a good time. -Jobs blesses everything that goes on the phone – nothing gets on phone before it passes Steve’s approval; While I resist that kind of control, I actually understand, as it is important to maintain the integrity of the hardware I understand this for same reasons as above (control over hardware to maintain integrity) Developer limited from modifying core applications- no background processing, no interpreted language runtimes developers not allowed to switch out core functions like contacts apps, or browser Facebook has a really nice iPhone application, and I've even heard it said that it could "almost" physically replace the iPhone Contact book . I understand this for same reasons as above (control over hardware to maintain integrity) Gadgets platform – Apple owns their platform and sees themselves as responsible for the user experience, period. They restrict what applications can do and what they can access accordingly, so as to maintain the quality of that user experience according to their standards NDA for iPhone SDK needs to be lifted – no developer access to forums, books about developing, etc The SDK includes both Instruments and Shark, tools which allow measurement and some very fine grained profiling of where all your cycles are going. This includes how much time is spent in the core libraries.
  • iPhone 3G is successful Environment is closed -SDK is Apple only, OSX 10.5 to boot, Object C is probably accessible for .NET developers with minimal effort. -Developers Access to distribution – costs $99 to join developer network, and if you sell an app, you must give %30 of you profit to Apple but make no mistake: this is a private party at Apple's house. They can be as picky as they want about who they let in, and they can ask you to leave at any time. But once you get in, as long as you behave yourself Apple wants you to have a good time. -Jobs blesses everything that goes on the phone – nothing gets on phone before it passes Steve’s approval; While I resist that kind of control, I actually understand, as it is important to maintain the integrity of the hardware I understand this for same reasons as above (control over hardware to maintain integrity) Developer limited from modifying core applications- no background processing, no interpreted language runtimes developers not allowed to switch out core functions like contacts apps, or browser Facebook has a really nice iPhone application, and I've even heard it said that it could "almost" physically replace the iPhone Contact book . I understand this for same reasons as above (control over hardware to maintain integrity) Gadgets platform – Apple owns their platform and sees themselves as responsible for the user experience, period. They restrict what applications can do and what they can access accordingly, so as to maintain the quality of that user experience according to their standards NDA for iPhone SDK needs to be lifted – no developer access to forums, books about developing, etc The SDK includes both Instruments and Shark, tools which allow measurement and some very fine grained profiling of where all your cycles are going. This includes how much time is spent in the core libraries.
  • Director of Web Technologies at Sun Microsystems Invited Expert at the World Wide Web Consortium between 1996 and 1999, Bray co-edited the XML and XML namespace specifications.
  • Apple Developer License Ban on Public Statements : As mentioned above, Section 10.4 prohibits developers, including government agencies such as NASA, from making any "public statements" about the terms of the Agreement. This is particularly strange, since the Agreement itself is not "Apple Confidential Information" as defined in Section 10.1. So the terms are not confidential, but developers are contractually forbidden from speaking "publicly" about them. App Store Only : Section 7.2 makes it clear that any applications developed using Apple's SDK may only be publicly distributed through the App Store, and that Apple can reject an app for any reason, even if it meets all the formal requirements disclosed by Apple. So if you use the SDK and your app is rejected by Apple, you're prohibited from distributing it through competing app stores like Cydia or Rock Your Phone . Ban on Reverse Engineering : Section 2.6 prohibits any reverse engineering (including the kinds of reverse engineering for interoperability that courts have recognized as a fair use under copyright law), as well as anything that would "enable others" to reverse engineer, the SDK or iPhone OS. No Tinkering with Any Apple Products : Section 3.2(e) is the "ban on jailbreaking" provision that received some attention when it was introduced last year. Surprisingly, however, it appears to prohibit developers from tinkering with any Apple software or technology, not just the iPhone, or "enabling others to do so." For example, this could mean that iPhone app developers are forbidden from making iPods interoperate with open source software , for example. You will not, through use of the Apple Software, services or otherwise create any Application or other program that would disable, hack, or otherwise interfere with the Security Solution, or any security, digital signing, digital rights management, verification or authentication mechanisms implemented in or by the iPhone operating system software, iPod Touch operating system software, this Apple Software, any services or other Apple software or technology, or enable others to do so Only ObjC – “Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited). “ -Flash-to-iPhone cross-compilation is a new feature in CS 5, and it seems that feature won't work starting with iPhone OS 4 in the summer (it's seems still fine for now on iPhone OS 3.1). -The goal of this is to force developers to only develop for iPhone, which will ensure all the biggest, and best apps are on the iPhone app store; Kill Your App Any Time : Section 8 makes it clear that Apple can "revoke the digital certificate of any of Your Applications at any time." Steve Jobs has confirmed that Apple can remotely disable apps, even after they have been installed by users. This contract provision would appear to allow that. We Never Owe You More than Fifty Bucks : Section 14 states that, no matter what, Apple will never be liable to any developer for more than $50 in damages. That's pretty remarkable, considering that Apple holds a developer's reputational and commercial value in its hands—it's not as though the developer can reach its existing customers anywhere else. So if Apple botches an update, accidentally kills your app, or leaks your entire customer list to a competitor, the Agreement tries to cap you at the cost of a nice dinner for one in Cupertino. Overall, the Agreement is a very one-sided contract, favoring Apple at every turn. That's not unusual where end-user license agreements are concerned (and not all the terms may ultimately be enforceable), but it's a bit of a surprise as applied to the more than 100,000 developers for the iPhone, including many large public companies. How can Apple get away with it? Because it is the sole gateway to the more than 40 million iPhones that have been sold. In other words, it's only because Apple still "owns" the customer, long after each iPhone (and soon, iPad) is sold, that it is able to push these contractual terms on the entire universe of software developers for the platform. In short, no competition among app stores means no competition for the license terms that apply to iPhone developers. If Apple's mobile devices are the future of computing, you can expect that future to be one with more limits on innovation and competition (or " generativity ," in the words of Prof. Jonathan Zittrain) than the PC era that came before. It's frustrating to see Apple, the original pioneer in generative computing , putting shackles on the market it (for now) leads. If Apple wants to be a real leader, it should be fostering innovation and competition, rather than acting as a jealous and arbitrary feudal lord. Developers should demand better terms and customers who love their iPhones should back them.
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications; Also includes tools to allow developers to quickly create applications. Open Source: -Source available since Oct 2008 - Android is the first free, open source, and fully customizable mobile platform. Designed from the start to be open source, and run as a mobile platform. -an application can call upon any of the phone's core functionality such as making calls, sending text messages, or using the camera, allowing developers to create richer and more cohesive experiences for users. Android is built on the open Linux Kernel. OHA: Members include most of the biggest Telecom vendors, handset makers, and component manufacturers. Worldwide. Free: -Good for mobile operators: The overall cost of handsets will be lower and mobile operators will have complete flexibility to customize and differentiate their product lines. Furthermore, they will see much more rapid innovation in handsets and in services. -Handset manufacturers will benefit from lower software BOM (bill of material) costs and faster time-to-market for handsets. In addition, they will have greater flexibility to customize and differentiate their product offerings. -No cost to developers to get tools, or publish apps
  • Open: - Android does not differentiate between the phone's core applications and third-party applications ; Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user. -Independent developers are also allowed to create applications that replace core phone functionality (like dialer, browser, contacts list, home screen, etc). Low Barrier to entry Easy to develop -Programming model is based on Java. Applications are written in Java, and just call new APIs. Tools used are based on existing most used tools (Eclipse). Also allows development without using Eclipse (if you would prefer command line – can use adb, etc). -Can run development tools on Windows, Linux, and OSX. Open Market -Very minimal oversight over what can be sold (mostly regarding security, or explicit material). You can publish replacements for any of the core applications (including the keyboard, or browser). -All applications are equal Feature Rich Platform -Multitasking -Access to native phone events (SMS, Phone ringing, etc) -3 rd Party APIs -UI Customization -Interpreted language support allowed (Python, JS, Ruby, etc) -Flash
  • Open handset alliance, consisting of some very big players including Google, HTC, LG, Samsung, Motorola, LG, T-Mobile, DoCoMo; Key to this, is that this isn’t a Google app – they must deal with wishes of community (which can be a difficult thing); Other thing, is that there is widespread support for platform http://www.openhandsetalliance.com/oha_members.html This has some positive effects -- as Dan Frommer pointed out earlier today , it gives Google the chance to get their OS on as many phones as possible. But when you're working with that many partners, it makes it more difficult to get things done. There is no gPhone – Android is open OS designed to run on a variety of supporting platforms. This makes designing apps for Android more difficult (no standard screen resolution, or gauranteed functionality on HW); The phone itself doesn't matter, it is the OS that is the key to this project (many API componenets avaialble to hardware vendors, but they don't have to support it). SDK is very accessible, easy to run, Java based, includes Eclipse plug-in Java-like (but not Java) Android is not Java technology. It uses the Java programming language but Dalvik is not a JVM. It’s not claiming to be Java tech. Android has a totally non-standard user interface toolkit. What this means is that applications written for Android have no chance of running anywhere else. Java applications will not run on the Dalvik VM without being ported Eclipse Plug in – or variety of command line tools if that is preferred SDK is buggy – Emulator slow, many features not implemented, etc Didn’t release to developers – accidentally sent out email announcement to forums; created bad blood Original release schedule for last quarter of 2008; already delayed, and likely will be further Aug 18, 2008 – HTC Dream gets FCC Approval, and next SDK released (still just 0.9) Completely Open Platform Android is intentionally designed to let third parties such as Facebook build an application that replaces the Contacts book, Home screen, and Dialer, or nearly anything else. Inverse of Iphone: You might even say that Android and iPhone are sort of inverses of each other. iPhone is a Gadgets- style platform where the user experience is largely fixed and an execution context is carved out for each third-party application. Android provides a framework for managing the execution contexts of third-party applications, which are permitted (and expected) to augment the user experience in innovative ways. Jason Chen - Android version 1.0 will be available to everyone and anyone who wants to download and port Android to any phone or any other devices they so desire.  Once Android version 1.0 hits the street, you do not have to be an OHA Member and you don’t need to sign anything or ask for anyone’s permission to install Android on any device.   Some things missing in Android 1.0 – “ Cut and Paste”; Bluetooth API Flash-lite Dan Morrill - http://blog.morrildl.net/2008/08/while-back-one-of-my-colleagues-charles.html
  • New Windows Mobile 7 due: “Sometime in the next year or so” – Gates (speaking before the Inter-American Development Bank) Touch Navigation - Windows Mobile 7 will use touch gestures, similar to how the iPhone does. You will be able to flick through lists, pan, swipe sideway, draw on the screen. A lot of emphasis has been put on making navigation easier and doing away with scrollbars, including a new scroll handle that allows for multiple ways of finding items extremely fast Large .NET developer base (integrated with MS Studio products) Very large installed base Costs $20 per license to install on phone Never bet against Microsoft They are making moves towards embracing mobile environment including introduction of new Mobile based search engine: Mobile Search Live – including an advertising platform Zune Phone (rumored to come with Windows Mobile 7, and Surface based interface) MS bought Danger this year (maker of Sidekick) Close integration with Outlook, and likely other Sync opportunities with rest of Windows Infrastructure big plus
  • XNA means current XBOX live developer marketplace games will run on the phone
  • Put a fork in them New Linux based OS due soon (but very oft delayed) Combination of Garnett Core, and Linux but very oft delayed No reliable release date announced Latest hardware is uninspirational Runs Windows Mobile New Treo Pro manufactured by HTC nice phone, slim, GPS, wifi, and non-recessed screen Centro is big success (but likely being sold at close to cost) Palm software division is likely done, hardware likely will continue to succeed
  • Put a fork in them New Linux based OS due soon (but very oft delayed) Combination of Garnett Core, and Linux but very oft delayed No reliable release date announced Latest hardware is uninspirational Runs Windows Mobile New Treo Pro manufactured by HTC nice phone, slim, GPS, wifi, and non-recessed screen Centro is big success (but likely being sold at close to cost) Palm software division is likely done, hardware likely will continue to succeed
  • They are back, and have a compelling offering!!! Won “Best Of CES” – 2009 Sprint has exclusive on release for 1 Year Due second quarter of 2009 Community is rooting for them They could present competition
  • They are back, and have a compelling offering!!! Won “Best Of CES” – 2009 Sprint has exclusive on release for 1 Year Due second quarter of 2009 Community is rooting for them They could present competition
  • They are back, and have a compelling offering!!! Won “Best Of CES” – 2009 Sprint has exclusive on release for 1 Year Due second quarter of 2009 Community is rooting for them They could present competition
  • Framework provides Innovative features Universal Search – search google, contacts, etc from single search Combined Messaging – all interactions with contact (incluing SMS, Facebook, etc) are combined into single view Connected Calendars – calendar information from multiple sources (Outlook, Gmail, etc) are combined into single logical view. Web-connected – Web integrated into overall experience (web apps to run as native applications on phone); Applications will update automatically (so you won’t have to “work for your data”) Notifications – area on bottom of screen for mail notifications, etc. Multi-threaded – keep multiple applications open, and move between them quickly and easily; Including a “Activity Card” paradigm, where you can rearrange your running apps to work with them as you want to Leverage local data storage so apps work when user is offline - Leverages HTML5 “local storage specification” JSON-based message bus tap into device services, including contacts, calendars, and location Very good integration between variety of application
  • http://www.mobilecrunch.com/2010/04/19/palm-now-waiving-the-99-annual-fee-for-webos-development/
  • Recently purchased by Nokia, and instantly open-sourced Looking at year or so before true nature of purchase, plays out Nokia, Sony Ericsson, Motorola and NTT DOCOMO have announced their intent to unite Symbian OS, S60, UIQ and MOAP to create one open mobile software platform. Partnering together with AT&T, LG Electronics, Samsung Electronics, STMicroelectronics, Texas Instruments and Vodafone SDK very accessible to variety of developers, including Java, C++, and .NET C++ IDE comes in 4 flavors, of increasing capability, which cost money But core is still C++, and the API’s are known to be somewhat difficult to work with There are 2 dirrerent SDKs (UIQ, and S60); From Symbian website: “ The most important thing to know when developing an application for a particular phone is the associated UI platform.” - so bottom line, the developer needs to know which phone they are targeting, and develop for that phone. Steep learning curve – requires special technigues for memory management (which are probably not necessary on modern phones) Huge installed market share Especially in Europe Over 200 Million phones shipped worldwide – could mean nothing; today things are different, and new phones are very different from old ones -or could mean that they have done this before, so they know the ins and outs of mobile platform Nokia OVI – infrastructure to support application delivery -Applications must be “Symbian Signed” which is problematic, and a barrier to entry (there are hacks to remove security from platform) -Innovative App Store - Current Version 9.5 (since March 2007) release of next version isn’t publicized
  • http://blog.distimo.com/2010_02_our-presentation-from-mobile-world-congres-2010-mobile-application-stores-state-of-play Games are 58% of iPhone market and 29% of Blackberry
  • http://nexus404.com/Blog/2010/03/04/who-sues-who-in-the-mobile-business-why-these-lawsuits-aren%E2%80%99t-good-for-you-me-apple-htc-nokia-samsung-rim-lg-sharp-sony-ericsson-motorola-toshiba-kodak-qualcomm-you-me/

Overview of Mobile Development Platforms Overview of Mobile Development Platforms Presentation Transcript