Android phones and tablets, iPhones and iPads, BlackBerry and PlayBook, Windows Phone and Windows tablets; when you get a device with a much larger screen, what really changes? There are some obvious differences – not every tablet has 3G as well as Wi-Fi – and the larger screen size means interfaces and interactions need to be different to work well. But apart from that, is a tablet operating system just the same as the matching smartphone? Not always.
Windows Phone and Windows
Today, Windows tablets and Windows Phones have very little in common beyond the fact that Microsoft used the same codebase to create IE9 and the Windows Phone browser. Even when Windows 8 tablets using ARM arrive next year, you won’t be able to run the same apps on both devices.
Windows 8 will use an interface based on the same Metro design languages and it will support apps written in WinRT and XAML, which have many things in common with the XNA and Silverlight development frameworks in Windows Phone, so changing a Windows Phone app to run on Windows 8 won’t be difficult.
But there will be different features apps can use; for example, Windows 8 will definitely support NFC but we don’t have a date for seeing that on the phone. Windows 8 has notifications and the Connected Standby standby state feels like a phone with the screen off but under the hood both work very differently on Windows 8. And there will be different app stores.
Further down the line, Microsoft is expected to use a common platform for Windows, Windows Phone and Xbox; it won’t be exactly the same but the development frameworks will get even closer.
BlackBerry and PlayBook
Apps written for BBOS, the BlackBerry OS that’s used on current smartphones and based on Java ME, won’t work on the current – or on the next generation BBX OS that RIM is using the PlayBook to introduce developers to the principles of BBX.
Apps written using RIM’s WebWorks can be either widgets or HTML apps, and it will be easy to run HTML apps on the PlayBook – and anything that works on PlayBook will work on BBX.
Many PlayBook apps are actually AIR apps (that’s Flash that doesn’t need a browser); there’s no Flash or AIR on BBOS but we expect to see AIR and Flash continue on BBX because RIM has an arrangement with Adobe to develop them. The PlayBook also runs apps written in C++ and OpenGL, which means it supports most of the key ‘engines’ for creating games. The 3D Cascades user interface framework that’s coming on PlayBook OS 2.0 next February will be on BBX as well. And the player that allows you to load APKs for Android apps (up to Gingerbread) on PlayBook will be part of BBX as well. This is a major transition. Today RIM has utterly different phones and tablets; going forward, it will have a powerful, unified platform for smartphones, tablets and other devices based on QNX (think set-top boxes and in-car systems) but it has to get BlackBerry users and developers to shift to the new OS.
Apple iPhone and iPad
Although iPhone and iPad apps have been written in Objective-C and the Xcode development environment, until 2010, the feature lists for the iPhone and iPad were noticeably different.
iOS 4.2 brought what Apple calls “major parity” but even in iOS 5 there are still deliberate differences between iPhone and iPad to take advantage of the physical differences between them and the different way you work with a larger screen. iPad apps have to support landscape and portrait orientations; few iPhone apps support landscape. The larger screen and ten touch points on the iPad leave space for four and five-finger swipes to open the multi-tasking bar and switch apps; iPhone has only two-finger multitouch gestures.
The Xcode tools let developers create a single, universal application that will work on both iPhone and iPad, but making a good app means designing the right user interface and interaction for each device (the app can automatically switch the interface when you load it on a different device). Most iPad apps have a split view to use the extra screen space, and more controls on screen too. For example, there’s enough room on the iPad for the new Tab bar in Safari, for a split keyboard, and for the button to add the current page to the Reading List directly; those wouldn’t work on a smaller screen so iPhone Safari doesn’t have them.
Interestingly, both the iPad 2 and the newer iPhone 4S appear to use the same dual-core A5 processor with the same 512MB of system memory, but the processor runs faster on the iPad 2, which has a much larger battery. The hardware can make a difference in other features; with iOS 5, an iPad 2 or iPhone 4S can use AirPlay video mirroring to show what you see on screen on an HD TV via Apple TV as well, but iPad apps can show different content on screen and on the TV screen.
Android: Gingerbread to Honeycomb to Ice Cream Sandwich
To bring Android to tablets, Google developed a separate version – the 3.0 Honeycomb release – which is not available to mobile phone makers, but can run apps from previous versions of Android. The interface for that isn’t ideal, because you basically get a phone-sized app in the middle of the screen.
Honeycomb is very different from previous versions of Android; it was the first release with support for multicore processors and hardware-accelerated OpenGL, it introduced a 3D interface with a list of recent apps and the Action Bar at the top of the screen replaced the hardware Menu, Back and Home buttons from previous Android handsets. The 3.1 update added USB host mode for file transfer and connectivity for USB devices including game controllers; the 3.2 update added support for more screen sizes, including 7” tablets, and zooming older Android apps to fill the whole screen.
Android 4.0, codenamed Ice Cream Sandwich, runs on both tablets and smartphones – although it arrived first on the Galaxy Nexus phone. It has Honeycomb features but they can scale down for smaller screens (even widgets can be resizable and notifications appear at the top of the screen on phones and in the System Bar on tablets). There’s a unified interface framework for developers that combines both Android 3.0 and 4.0 elements and APIs.
With Ice Cream Sandwich, Android is the only operating system that can be exactly the same on a smartphone and a tablet. Many of the Honeycomb features, especially in the updates, only make sense on tablets with the screen size to take advantage of them, so apps will need to be written to distinguish between phones and tablets so the interface and experience works well.