Android Image

Carmen Delessio is CTO of Layercake, an NYC startup focused on helping parents to quickly and easily manage their photos and digital memories. Request a beta invite at GetLayercake.com. Carmen’s Kindle Fire and other apps can be found at BffMedia.com.

My $99 Logitech Revue was just upgraded to the latest version of Google TV. My “go to” tablet these days is Amazon’s $199 Kindle Fire. These are both Android devices and are examples of the platform’s recent fragmentation.

Android fragmentation highlights include:

  • 5 OS versions on devices (Donut, Eclair, Froyo, Gingerbread, and Ice Cream Sandwich)
  • Devices in various sizes, from small phones to TVs
  • Device manufacturers branching their own versions of Android

Amazon’s Kindle Fire is an example of a device with a manufacturer’s custom version of Android. This splintering has caused real concern among developers.

Android fragmentation is most often compared to Apple’s closed ecosystem for iOS. Apple iPhone and iPad developers can deliver pixel-perfect apps and be assured the apps will just work. Android’s multiple sizes, OS versions and branching make that pixel-perfect delivery difficult for developers.

But there are some positives of Android fragmentation from a developer standpoint. Here’s a look at some of the pros and cons.


Pros for Developers


  • Kindle Fire is showing strong sales
  • Amazon has a dedicated market for the Kindle Fire
  • Developers can design for a specific device
  • Apps on TV are cool
  • Low penetration in the TV app market means it’s easier to get noticed
  • The Android compatibility package and “fragments” address the issue of OS fragmentation (more on this below)
  • New revenue models are available

Cons for Developers


  • Too many devices running different operating systems
  • Need multiple designs for your apps
  • Too many apps in the Android Market
  • In general, Android users pay for fewer apps
  • Android tablet sales are poor
  • Google TV has not enjoyed mainstream success yet
  • TV apps are new and unproven

App Markets


App markets are a key to platform and developer success. The Amazon Android market on the Kindle Fire is the first significant alternate Android market for consumers. There are other options out there, but Amazon puts together the device and the market and curates the apps. This is quite like Apple’s process. Though built on Android, the Kindle Fire is a device that lives in a closed ecosystem. With more than 4 million units sold, the Kindle Fire deserves developer attention.

Similarly, an app market has just recently appeared on Google TV. Sony devices received the app market in November 2011 and the Logitech Revue received the update in December. It is only now that a developer can see his Android apps in a TV market.


Kindle Fire


I believe in the numbers. Kindle Fire will be the most successful Android tablet in the foreseeable future. There are plenty of consumers out there who just use and trust Amazon. TV ads and the Amazon site will be their introduction to the tablet world.

The $199 price tag and focus on the device as a reader and video player make the Kindle Fire a consumer device worthy of attention regardless of lackluster reviews.

Amazon knows how to sell, and that is an opportunity for developers. We can hope that making a good app for this device will drive sales.


Google TV


Apps look great on TV. As a developer, it’s fun to see your app on a big screen, especially if you’re working with photos or videos.

The availability of a marketplace drives growth and consumer acceptance. The recent upgrade provides the first real opportunity to develop and market apps for a Google TV. There is a window of opportunity for developers to stand out from the crowd before media companies and others really get into the game.

Google TV provides the potential for new revenue models. Advertising on TV apps is an unknown, but showing an in-app ad on the big screen may be more compelling than a 40-pixel mobile banner. Promoting your own phone and tablet apps within a TV app is an idea that seems worth pursuing. It is common to have a free advertising supported app and a paid app, but maybe a free TV app and paid apps on all other platforms is the way to go. We can speculate quite a bit about apps for TV, but one thing is certainly true — you can’t take it with you.


Technical Solutions


Google has done a lot to address fragmentation. One of the few times I thought Google showed a sense of humor as a company was when they added a new feature called “Fragments” to the Android Honeycomb release. Fragments provide the ability to create and reuse sections of the screen as UI components. In one app, a fragment may take up the full screen on a phone and just part of the screen on a tablet.

Google has provided a compatibility library that further addresses Android OS fragmentation. The library supports fragments and commonly used features for Android 1.6 to 3.x. A single code base can support Eclair through Ice Cream Sandwich.


Design and Targeting Devices


As screen sizes are factored in, the development task becomes design dependent. While Android provides great support for designs that work on multiple screen sizes, it can still be more challenging than the pixel-perfect closed iPhone system.

One option is to target a specific device. I’ll admit a guilty pleasure in developing an app just for the Kindle Fire. Based on the market size and technical spec, it seems worthwhile. Knowing that I could create and test an app on a single device and that it would look great on every Kindle Fire is very gratifying. It’s a small taste of how iPhone designers and developers must feel.

Google TV and Android tablet apps have a lot in common. Depending on your design, they may be exactly the same. Creating a TV app may lead you to releasing a tablet app because … you might as well.


Conclusions


A developer has the capability to create a single app for all devices using available technology. I suspect a common approach will be to use fragments and the compatibility library, which offer a significant amount of common code across a phone, Kindle Fire, and tablet/TV releases.

Having three or four products in the market may make more sense financially as well. An app called “Great App (Kindle Fire Edition)” may share 95 to 100% of the code with an app called “Great App (Google TV Version).” Rather than comparing that to iOS development, compare it to the work that web developers do to create websites that work well in five or six different browsers.

The opportunity to use newer Android versions and tools will help new developers get up to speed. The compatibly package and fragments will help those developers support multiple devices. The availability of Kindle Fire and Google TV offer two new markets for apps. Right now, the rewards for developing on new platforms for Android outweigh the risks.

More About: android, contributor, design, development, features, Mobile, mobile development, programming

For more Dev & Design coverage:





The Mobile App Trends Series is sponsored by Sourcebits, a leading product developer for mobile platforms. Sourcebits offers design and development services for iOS, Android, Mobile and Web platforms. Follow Sourcebits on Twitter for recent news and updates.

For mobile app developers, building an app rarely takes place in a vacuum, as most users expect their apps to interface and work with various Internet services.

Building a mobile app increasingly means building an app that can interface with its own server or set of network services.

For mobile app developers, picking and choosing a server or cloud solution for things like storage, push notifications, user information and analytics can be a struggle.

Fortunately, a new wave of companies and services are stepping in to help developers make the best choices.


Yay Cloud


With AWS, Amazon has really led the way toward making cloud services and distributed computing and storage solutions affordable and easily accessible.

Thousands upon thousands of application developers — mobile, web and desktop — use Amazon for storage, to run processes and to store or query data.

Amazon and its competitors have APIs and toolkits designed to make integrating their services with an existing app backend a snap.

AWS SDK — Amazon offers an AWS SDK for Android and an AWS SDK for iOS. These SDKs offer libraries, code samples and documentation to help app developers leverage Amazon’s AWS services, including EC2, S3 and Amazon SimpleDB within their own apps.

Windows Azure — Microsoft is pushing its Windows Azure cloud as mobile-dev friendly. The company has released official SDKs and APIs for iOS, Android and Windows Phone.

Google offers Android developers the ability to link their apps to Google App Engine, using the Google Plugin for Eclipse.


Cloud Backend Solutions


In addition to self-selecting cloud services from various providers, a number of startup platforms offer easy access to a variety of cloud services and backends, but without a lot of overhead hassle.

This space is often called Backend as a Service [BaaS] or Platform as a Service [PaaS] and it is heating up fast.

Most of these companies will work directly with the major cloud providers, like Amazon, RackSpace and Windows Azure, but will abstract the process so the developer doesn’t need to mess with a lot of settings, accounts or configurations.

Some of the players in this space include:

Parse — Parse recently closed its Series A funding round and is used by Band of the Day, Hipmunk and Yobongo. It works with iOS and Android and can connect with Heroku. You can also use Parse in cross-platform apps like Appcelerator and Sencha.

StackMob — StackMob is currently in private beta and has an SDK for iOS, Android, Java and custom server side code. Like Parse, StackMob can integrate with Heroku. It also offers server-side integration with Facebook and Twitter.

Kinvey — Kinvey was one of the earliest players in the space and it dubs its solution, Backend as a Service. Kinvey uses AWS, RackSpace Cloud and Windows Azure to offer up its backend tools, along with its own APIs that developers can drop into their own apps.

CloudMine — Cloudmine supports Ruby, Python, PHP and Java.

Buddy Platform — Buddy Platform is kind of a hybrid between developer platforms like Appcelerator and backend platforms. It has APIs for access to features like user management, geo-location data, photos and album information and user messaging.


Your Tips


Have you used off-the-shelf or infrastructure as a service tools in your mobile app? What should developers watch for? Let us know.


Series Supported by Sourcebits


The Mobile App Trends Series is sponsored by Sourcebits, a leading developer of applications and games for all major mobile platforms. Sourcebits has engineered over 200 apps to date, with plenty more to come. Sourcebits offers design and development services for iPhone, Android and more. Please feel free to get in touch with us to find out how we can help your app stand apart in a crowded marketplace. Follow Sourcebits on Twitter and Facebook for recent news and updates.

Image courtesy of Flickr, KEXINO

More About: AWS, cloud computing, cloudmine, features, kinvey, mashable, Mobile App Trends Series, mobile developers, mobile development, parse, stackmob, Web Development

For more Dev & Design coverage:





Jeroen Wijering is the creator of the incredibly successful JW Player, which has generated millions of downloads since its release in 2005. In 2007 he co-founded LongTail Video, focusing on a full-fledged online video platform that includes encoding, delivery, syndication and advertising.

With the Android and iOS platforms growing like weeds, online publishers are scrambling to “mobilize” their video players. Because Apple’s iOS doesn’t run Flash, most of these publishers turn to the HTML5 <video> tag for delivering their clips to mobile devices.

While universalizing mobile video is a critical first step (better to have your videos play than not), it only marks the beginning of the process. The mobile user experience (UX) model is vastly different from that of the desktop browser, which means additional work is needed in areas such as interface, streaming and advertising. These UX differences hold several implications for video players.


Touch vs. Mouse


The most obvious difference is user input. A mouse controls desktop video players, whereas both iOS and Android rely on capacitive touchscreens. Since a fingertip is both bigger and more difficult to position than a mouse cursor, buttons on mobile video players must be larger than their desktop equivalents.

When using a mouse, there is the so-called “mouse-over” state — when the mouse is positioned over a button, but not clicked. Some video players rely on this tool to pop up a volume slider or selection menu. However, the tool is not available on touch devices, so mobile players cannot rely on it.

On the other hand, touch devices do allow users to control applications by sliding one or more fingers across the screen. This type of interaction (found in features like gestures and multi-touch) is relatively new and still unexplored, but could become widely used over time. Some basic gestures, like sliding over a webpage or scrolling through a playlist, are already widely recognized today.


Full-Screen vs. Windowed


Another key differentiator is screen size. Mobile screens are three or four inches in diameter, a big leap from 14-inch laptops or 20-inch desktop monitors. Therefore, on both Android and iPhone, videos are usually played back in full-screen, instead of a smaller window within an HTML page. This means that visual interaction with other parts of the page — including companion ads that pop up — is lost on mobile devices. Publishers should not rely on this advertising model.

In full-screen mode, both Android and iOS expose only system-provided video controls like pause and seeking. Important online video components such as additional share buttons and overlay ads are simply not possible. Therefore, any custom controls or graphics are best displayed before the video is started and/or after it has ended.


On-the-Go vs. At-the-Desk


Mobile devices are frequently used on-the-go, meaning their Internet connection may be poor and unreliable. Connection speed can change dramatically, even within a single video playback session, for example, when a user switches from 3G to Wi-Fi. Therefore, iOS devices support a specific type of video streaming that continuously adapts video quality to the available bandwidth connection: HTTP live streaming. It is highly recommended to use this functionality for mobile video playback.

Unfortunately, Android only supports this type of streaming as of version 3.0. To ensure optimal video quality, players can offer an up-front video quality selection. As Android manufacturers migrate from the 2.x to the 3.x platform, HTTP live streaming can — and should — replace this manual quality selector.

An additional “watch later” tool is convenient for mobile players. Users who are casually browsing on a mobile device can tag a video to save for later viewing. The publisher will then remind the user about the video at a later point. Publishers can implement “watch later” functionality using cookies, logins or one of the emerging services dedicated to this functionality.


In sum, the vast differences between desktops/laptops and mobile devices require a major redesign of existing video players. But things don’t stop at the player. The surrounding website needs optimization as well, with less content, fewer sidebars, less clutter and more focus on the video itself.

Mobilizing your video is not about swapping Flash for HTML5. Instead it’s about adapting your content to the device and facilitating a unique and interactive type of user experience. Mobile video consumption is exploding, but it’s also still evolving, as are the platforms that serve the content to consumers. By going above and beyond the bare minimum now, you’ll be well positioned as mobile continues to grow.

Images courtesy of iStockphoto, PashaIgnatov, and Flickr, Luca Zappa.

More About: Mobile 2.0, mobile development, video

For more Dev & Design coverage:

3d-edge

The Mobile Web is the most important development in the online world since the internet itself. Due to better services and smaller, cheaper devices, there has been a huge explosion in mobile technology that far outpaces the growth of any other computing cycle.

Are you ready for this?

Our brand new title Build Mobile Websites and Apps for Smart Devices is a practical guide for innovative front-end web designers and developers. You’ll discover a fun and accessible approach to mobile web design and development, with enormous scope for opportunity.

If you need convincing as to the mobile web’s impact, simply look around you. Everywhere you go, people are accessing the Web from their devices. Check out these statistics:

  • By the year 2014, consumers will be buying more smartphones than PCs and Laptops.[1]
  • Since the launch of the iPhone, more than four billion apps have been downloaded, with an average of 47 apps per user. Android and iPad app stats are also in the millions.[2]
  • Worldwide mobile browsing has increased 148% in just a year. [3]
  • The number of users accessing Facebook and Twitter through their mobile devices has more than doubled in a year.[4][5]

Clearly, the need to develop for mobile devices is very much alive, and will only become more necessary as time goes on. This book will take you from turning a basic website into a sexy mobile site, from cool mobile app to lucrative and seductive native app.

For the first time ever, you can grab a multi-media bundle including the epack, print book, and a comprehensive online course. The course is from our sister-site, Learnable and taught by one of the book’s authors, Myles Eftos.

You can grab the bundle here for only $49.95 (Saving of 50%!) and take part in this comprehensive learning experience!

The crew with their toys