Platforms - Mobile Native

Most modern mobile platforms offer a native compilation solution. These APIs are widely diverse in their functionality and even the language they are written in (some in C++, some in C#, some in Objective-C, ...). However, because of the diversity of handsets in the mobile market it is hard to financially justify favouring just one platform. Unfortunately, for a developer to perform a conversion to all these platforms by hand would be a time consuming and costly process. In order to alleviate this, as well as reduce the 'release time' gap between one platform and another, Bedrock offers the developer a way to write in one language and have their code automatically cross compiled and linked to create a build for a wide range of target devices.

BREW

BREWSince its initial release back in 2001, BREW has been a dominating platform in several territories, including America. With hundreds of different handsets having been released over the years from a wide range of manufacturers, the range of capabilities in the BREW market is very large.

Features

  • Automatic Visual Studio project creation for debugging (using the BREW 3.1.5 handset simulator)
  • RVCT compiler integration to generate releaseable MODs
  • Multi-threading (via IThreads or Callbacks)
  • OpenGL ES support
  • Audio playback options via IMedia or ISound

HP (Palm) webOS

HP/Palm webOSLaunched in Q2 2009, the various Palm handsets present a set of new, high performance additions to the smartphone market. Based on Simple DirectMedia Layer, Palm's PDK requires the developer to learn a further set of APIs and standards to target their devices, but with Bedrock all this is handled automatically, leaving the developer free to simply focus on his code.

Features

  • Automatic Visual Studio project generation for debugging
  • Multi-threading (via SDL_Threads)
  • OpenGL ES support
  • Audio playback (via the SDL_Mixer)
  • Compiler support for both Pre and Pixi settings

iOS (iPhone / iPad)

iPhone / iPadFollowing its sudden surge to popularity in Q4 2008, Apple's iPhone has become one of the most popular and prolific mobile devices on the global market. Combined with the release of the iPad (which also uses the iPhone OS) in Q2 2010, developers are presented with a fascinating platform that bridges both the mobile and tablet markets. With its underlying system based on Objective-C and Mac development, it can seem that targeting the iPhone OS might require an entirely new development skillset from traditional mobile development (a potentially costly proposition) but with Bedrock, cross-compilation to the iPhone and iPad is smoothly integrated, minimising the developer's need to learn new API's or languages.

Features

  • iPhone and iPad support
  • Automatic XCode project generation for debugging (using the iPhone simulator or via data-cable to an actual device)
  • Multi-threading (via pthreads)
  • 2D rendering via 2D or 3D pipelines
  • OpenGL ES support
  • Orientation change detection and custom limitations
  • Accelerometer support (via the Sensors API)
  • Audio playback (via Audio Toolbox)
  • GPS Location support
  • Custom plist definitions and formats

Samsung bada

Samsung badaAnnounced in Q4 2009, the bada platform allows developers to target native applications for the upcoming range of Samsung smartphones. Based on a new and custom set of APIs, and working in an Eclipse-based development SDK, bada can seem to provide an unfamiliar working environment for many native C++ developers, let alone for developers in the Java market. Fortunately, with Bedrock developers can continue to work in their usual manner and Bedrock will automatically handle the transition of application codebases to support this emerging technology.

Features

  • Automatic Bada IDE / Eclipse project generation for debugging
  • Multi-threading (via Osp Base Runtime Threads)
  • OpenGL ES support
  • Audio playback (via Osp Media)

Symbian

SymbianSince its public release in 2001, Symbian has gone through a number of iterations, culminating in the most recent version, Symbian^3. Used in a wide range of Nokia and Sony Ericsson smartphones, the Symbian market is often overlooked due to the handsets' ability to run standard J2ME applications. With Bedrock, however, developers can take advantage of native Symbian's better performance and enhanced feature sets whilst retaining that Java codebase, offering the best of both worlds.

Features

  • Automatic Visual Studio project generation for debugging
  • Multi-threading (via RThreads)
  • Supports Symbian OS 9.1+

Windows Mobile

Windows MobileInitially released back in 2000, Windows Mobile was one of the earliest smartphones operating systems to appear in the market. Pocket PC devices have been released by scores of handset manufacturers, exhibiting an enormous range of capabilities and feature sets across all the devices. Bedrock's CrossCompiler along with its device profile database helps developers tackle this wide market with great ease.

Features

  • Automatic Visual Studio project generation for debugging (using the simulator or via data-cable to an actual device)
  • Multi-threading (via native Windows threads)
  • Orientation change detection
  • Audio playback (via Windows multimedia wave API)
  • Support for all surface handling variants
  • Automatic icon creation

Windows Phone

Windows PhoneDeveloped and released by Microsoft in Q3 2010 as the successor to Windows Mobile, the Windows Phone platform is based on the desktop-recognised standards of Silverlight and XNA. The only current mobile platform that requires development in C#, Windows Phone is a difficult target for many cross compilation solutions in the marketplace. Bedrock's CrossCompiler, however, can convert application code to C# in the same manner as it generates C++ for other platforms, making Bedrock the leading platform to integrate with in order to include Windows Phone in your mobile offerings.

Features

  • XNA integration
  • Automatic Visual Studio project creation for debugging
  • Multi-threading (via System Threading)
  • OpenGL ES support