SDK Release Notes


What's New in MoSync SDK 3.0

Our 3.0 release is a major step forward for cross-platform mobile application development. We've made it easy to port existing PhoneGap JavaScript apps to MoSync with little or no change required. We've implemented the majority of our libraries and APIs on Windows Phone 7. We've made it possible to access native widgets from your JavaScript code. There are great new C++ libraries for notifications, and APIs for advertising banner, SQL databases, and audio streaming. We have simplified the whole resource packaging process and streamlined the resource compiler. There are new code templates and example applications in the IDE, and new  tutorials and user guides online. Whew!

Here's a quick summary of all that's new.

Windows Phone 7 — support for Microsoft's platform

Windows Phone 7

The MoSync Mobile SDK now boasts extensive support for Microsoft's dynamic new mobile platform. We've implemented almost all of the standard MoSync C API functions in our new runtime for Windows Phone 7. And of course that means that all of our powerful C++ libraries automatically now work in applications built for Windows Phone 7 devices. And don't forget you can write pure JavaScript applications (or hybrid C++/JavaScript apps) in MoSync through our HTML5 Wormhole JavaScript Library, and those applications will also work seemlessly on Windows Phone 7 devices. How cool is that! Dev guideExample application | Feature/Platform Matrix.

Wormhole JS Library — PhoneGap apps on MoSync

iOS, Android, Windows Phone 7

We've expanded our Wormhole JavaScript Library with many new PhoneGap-compatible JavaScript functions, as well as with support for native widgets, sensors, and notifications. That means that your existing PhoneGap JavaScript applications will run in MoSync with little or no need for change and that it is possible to easily add functionality that's not available out-of-the-box with PhoneGap. And, thanks to the Wormhole Library, it's easy to build apps that seamlessly blend HTML5, CSS and JavaScript with C/C++. Quick start | Dev guide | Running PhoneGap appsWormhole overview | Library reference | Example application | Feature/Platform Matrix.

JS NativeUI API — native widgets from JavaScript

iOS, Android, Windows Phone 7

One of the new APIs in our Wormhole JavaScript Library is the JavaScript NativeUI API. It gives you direct access to native user interface widgets, like navigation bars, buttons, tab screens, and list boxes. You access this library through HTML mark-up or directly from JavaScript. And you can use it side-by-side with the other API modules in Wormhole — for example, extending the capabilities of your existing PhoneGap apps. User guide | JS API reference | Example application.

Database API — access a device's SQL databases

iOS, Android, and MoRE

Our new Database C/C++ API provides syscall functions for reading and writing to SQL databases on the latest Android and iOS devices. We've kept its design simple to make it easy to learn to use. If you need them, high-level functions based on it can simply be implemented in your own C++ classes. The Database API allows simultaneous access to multiple databases and allows multiple results sets (cursors) to be used in parallel. User guide | C API reference | Example application.

Notifications Library — react to local/push notifications

iOS and Android

We have added support for both local notifications from other apps on the mobile device and push notifications arriving from outside the device. That means you mobile app can respond when messages arrive, or a calendar even occurs, or new data is published on a remote server. The Notifications API handles a variety of alerts -- playing a sound, badging an application icon, triggering vibration -- and you can schedule the sending of notifications from your own apps. The Notifications Library provides a C++ wrapper to simplify notification handling. User guide | Push Notifications tutorial | C API reference | C++ Library reference.

Advertising Library — show ads in your apps

iOS and Android

With our new Advertising Library and Advertising API you can add ad banners to your application screens. So now it is easy to promote products within your application, tell users about new releases, and give them the option to purchase your and others products. The API gives you control over banner properties like size, positioning, and context sensitivity. Developer's guideC++ Library reference | C API Reference | Example application.

Capture API — easy access to the camera

iOS and Android

Our new Capture API provides a simple yet powerful interface for firing up the native camera/video controller on the device. This let's your user take a picture or record a video from within you application. The captured data is available in your application as an event and can be saved to file. The native camera/video controller is the Camera app on Android and the UIIMAGEPICKERCONTROLLER on iOS. User guide | C API reference.

Audio API — play audio resources simultaneously

iOS and Android

The new MoSync Audio API provides a range of functions for pausing playback and resuming, getting and setting the position in the audio file, and getting the duration of the song. Both streaming and non-streaming audio resources are supported, and and now background soundtracks and sound effects can be played at the same time. This means simpler sound handling in your applications, and a better auditory experience for your users. User guide | C API reference.

Device/Platform handling — simpler and more efficient

All platforms

We've made major improvements to the way that building packages for different platforms and devices is handled in the MoSync IDE. Our previous Device Profiles/Finalizer paradigm is still fully supported for previous projects, but for new projects you now select by and build for platform and device capabilities. That both simplifies the building of packages are makes it easier for us to support newer devices. User guide.

Resource Compiler —  fast, flexible resource handling

All platforms

We have rebuilt the MoSync Resource Compiler from the ground up. We have simplified resource handling, but the new paradigm is fully backward compatible so there is no need to change the way you handle resources if you don't want to. The new compiler allows you to organize application resources in folders and sub-folders making it easy to define different resource subsets for different platforms, screen sizes, user groups, and so on. User guide | Command reference | Example application.

maDestroyPlaceholder —  release placeholders to pool

All platforms

We've introduced a useful new syscall function, maDestroyPlaceholder, that lets you release placeholders back to the pool, including placeholders created by MoSync widgets. Now there's no risk of creating too many placeholders in your applications. The new syscall function not only releases the placeholder, it also destroys the object for you. (And internally we've implemented this new syscall throughout the Wormhole library to improve handling of all data objects.) User guide | C API Reference.

New Issue Tracker — better bug and request tracking

All platforms

We've implemented a whole new issue tracking system in Jira. That means better control and visibility of issues, better tagging and filtering, and being able to see our progress at a glance. User guide | Issue tracker.

HTML5/JavaScript — quickly unpack large bundles

iOS, Android, and Windows Phone 7

We've added an automatically generated checksum as part of the file bundle made from the /LocalFiles folder. That means your HTML5/JavaScript application will be able to unpack large bundles much quicker after the first unpacking. And of course, as we've said above, implemented the Wormhole JavaScript Library on Windows Phone 7, so you can now produce JavaScript-based apps for the Microsoft platform.

Android Experimental Runtime


We've added an experimental runtime for Android using the same ARM recompiler which we use in the Symbian and Windows Mobile runtimes. This runtime runs faster than the standard one but has not been properly tested and has flaws but we still want to share it with you so you can test your applications running even faster than before! Don't use this for production code just yet!

New IDE Templates

  • HTML5/JS WebUI Project
  • HTML5/JS NativeUI Project
  • HTML5/JS/C++ Hybrid Project

These templates are available when creating new projects in the MoSync IDE. For an overview of all the available templates, see Creating Projects from Templates.

New and Updated Example Applications

  • WormholeDemo — a new example application demonstrating many of the capabilites of the Wormhole JavaScript API, including support for PhoneGap-compliant functions and W3C compliant functions.
  • WormholeNativeUI a simple example showing how to use the Wormhole JavaScript Library's NativeUI API and combine its functions with other Wormhole API functions.
  • DatabaseTest — a new example application that demonstrates how to read and write to a device's SQL database, including how to manipulate results sets.
  • ResourceTest — a new example application that demonstrates how to use the MoSync 3.0 Resource Compiler to organise images and other resources for multiple platforms.
  • NativeUIDemo — this existing example application has been updated to demonstrate the use of  the new Advertising API.
  • CameraDemo — this existing example application has been updated to show the use of maCreatePlaceholder to destoy objects and release placeholders back to the pool.

Documentation for all examples is available at ../../../sdk/index.html.

New User Guides and Tutorials

We have also updated many of our existing user guides and tutorials: Coding Conventions, The Issue Tracker, Feature/Platform Matrix, Creating Projects from Templates, Build Configurations and Settings, Compilation, Linking, and Assembly, Resource Compilation, Resource Compiler Reference, Processing XML, Playing Sounds, Platform and Device Profiles, Scanning for a Device, Sending to a Device, Emulating a Device, Finalizing Applications, Platform and Device Database, Application Permissions, The MoSync Toolchain, The Runtime Architecture, Creating Your First C++ Application, Launching and Registering the MoSync SDK, The MoSync Emulator and MoRE, The Runtimes.

All documentation is available online at MoSync Developer Home.

Known Issues and Limitations for MoSync SDK 3.0

Bugs Fixed in MoSync SDK 3.0


New in MoSync SDK 3.0.1

Our bug fix release 3.0.1 incorporates the following additions:

  • Date Picker on Windows Phone 7—this new widget for the Windows Phone platform, similar to those for iOS and Android, lets you pop up a Metro-style dialog for choosing dates. It shows 3 scrollable areas for days, months and years.
  • Core issues fixed in MoSync 3.0.1.


New in MoSync SDK 3.0.2

The MoSync SDK 3.0.2 release extends our support for the Windows Phone 7 platform, fixes some minor core issues, and provides tighter integration with the new version of MoSync Reload, Beta3:


New in MoSync Reload Beta3

We have continued to improve our rapid HTML5/JavaScript development aid, MoSync Reload, adding a cool new logging feature and fixing some minor issues:

  • Reload remote logging—it is now possible to send log messages from the connected devices to the Reload Server, simplifiying the process of debugging your code on each device. Reload remote logging works the same way as the standard W3C JavaScript console.log function available in Firebug and some other web development toolkits. The logs show in a new tab in the Reload Server user interface.
  • See all MoSync Reload Issues fixed in Beta3.



MoSync SDK 3.3
Copyright © 2013 MoSync AB