PureView Imaging Competition update

We’ve just awarded our second PureView Imaging Competition 2012Q winner a fantastic new Nokia 808 PureView. The competition has already been a huge success with a particularly high quality and quantity of entries across a broad range of imaging topics.

Due to the extremely high quality of entries, we will be awarding an additional 2 Nokia 808 PureView devices in the final part of the competition – bringing the total to 5. The Nokia Event could be awarded to any of the phone winners.

We are also in the final stages of updating the Qt Camera Demo to support video recording (version 1.2). This should be released next week – but the source is already available here if you need it for your next competition entry! Note that the documentation and updated Camera Guide should come soon after.

Thank you to everyone who has contributed so far. We welcome any feedback you might have on the imaging apis or on this competition.

Further links:

Wiki PureView Imaging Competition

Sharing your expertise and innovative use of the Qt or Symbian C++ Camera and Imaging APIs could win you a trip to a Nokia Event and the brilliant new Nokia 808 PureView smartphone, not to mention raise your CV to the next level, and get your skills noticed by the community. 

The Nokia 808 PureView has awesome capabilities for video and still image capture. It’s also the first phone to include support for audio recording without distortion, at audio levels beyond the capability of human hearing: so even in the harshest of environment you can capture CD-like audio
quality
.

With our new PureView Imaging Competition we are looking for how tos, tutorials, and code example articles that help the community write better and smarter imaging and camera software.

While we’re expecting to get many articles that explore the limits of what this phone can do, we also welcome articles that demonstrate code that can be useful on all Symbian (and most Qt) devices. The scope of what we consider imaging related is also very broad – we would certainly consider examples of photo sharing and image compression code and software for example.

To get you started we’ve created a Camera Guide and for how to use Qt to access camera functionality.

For more details and to enter, see PureView Imaging Competition 2012Q2.

Qt Telephony Utility (Featured Project)

project icon​Qt Telephony Utility by galazzo is a Qt library which exposes all the useful functionality in the Symbian C++ public Telephony API (CTelephony). This library makes it easy to make and answer phone calls and get the IMEI, in both Qt C++ and Qt Quick.

We like that this project delivers a very useful API which developers would otherwise have to roll out themselves. It is well documented with good examples so there is no guesswork involved when including it in your projects (see API reference and example documentation on the main wiki: ​How to manage phone calls with QS60Telephony). In addition, the fact that it has been used in an app published on Nokia Store (​Blacklist Manager) means that it will get regular real-world testing.

The author has already responded to requests to improve the documentation and removed unnecessary dependencies (making the project easier to use). Please provide any further feedback and suggestions for the API or ​Blacklist Manager in the project discussion boards.

– Hamish Willee (on behalf of the Projects Moderation team)

WeatherApp and Weather Forecast (Featured Project)

project iconproject iconWeather App and ​Weather Forecast are both Nokia Developer examples.

WeatherApp is a simple Series 40 weather showing a four-day forecast with temperatures, relative humidity, wind speed, and wind direction. It retrieves the current location via CellID or GPS or by user-defined location and uses the location for retrieving weather forecast information. The app also demonstrates how to use JSON data parsing, and has been designed to scale to various screen sizes and input methods. Version 1.1 also demonstrates monetisation with in-app advertisements.
 

Weather Forecast is the port of a Windows Phone app in Microsoft’s MSDN Library to Qt Quick. It parses weather forecast content from XML data retrieved over the network. In addition, the example demonstrates how to implement internationalisation with Qt and Qt Quick. Four languages are supported: English, Finnish, German, and Polish. Lastly, it has a good QML splashscreen, and an associated wiki article which explains your ​splashscreen options.

We like these projects because they show basic weather app functionality for two platforms (three if you count the original Windows Phone weather app). From them developers can learn the basics of integrating with an external weather service using the different development frameworks, and some of the logic of porting between them.

As with all Nokia Developer Examples, you can suggest improvements, raise defects, and join the projects. Your input and involvement is welcome!

– Hamish Willee (on behalf of the Projects Moderation team)

QIap (Featured Project)

project iconQIap is a wrapper class for simplifying in-app purchasing, by galazzo.

In-App Purchasing (IAP) allows end users to purchase and pay for additional content or services from within an application. While Nokia provides some ​great (beta) APIs for in app purchasing, we like the fact that galazzo has offered a simpler API that will address the most common use cases. He’s provide good documentation on how to use the API, along with some straightforward example code and a “real” ​Superbike example to make it even easier to use and understand.

We also like how he’s promoted his project on the wiki with this article: ​QIap – a simple Qt interface for In-App Purchasing and entered his example code into our Qt Quick Component competition.

Galazzo has made some other projects you might want to check out, including ​QVibra and ​QTelephony for accessing Symbian vibration and Telephony APIs, and ​QShake for detecting shaking motions.

– Hamish Willee (on behalf of the Projects Moderation team)

​TwimGo (​Featured Project of the Month March 2012)

TwimGo iconTwimGo is an open source ​Twitter client for Symbian and MeeGo devices written entirely in Qt Quick. The app provides both the basic functionality you’d expect, including home screen, mentions, favourites, timelines, search, lists, trends, along with more advanced functionality like searching for mentioned hashtags and opening tweet detail. The project moderation team think this is one of the best twitter clients available on Symbian.

TwimGo is also one of the most popular on Nokia Projects, with 60 followers. We really like the fact that its still a very active project, and that it uses the ​ticketing system to track bugs and enhancements. It would be great if the tickets were associated with milestones so we could see when releases are expected, but given the team are almost always active, we know that new releases aren’t going to be long in coming!

TwimGo screenshot

There isn’t a great deal of documentation, but the fact that Qt Quick is quite comprehensible and everything is open source the project means that even relative programming novices can learn something from this project. Other users will be able to use it to find out how to implement more advanced functionality, for example authentication.

We recommend you try this app – you can download it from the project summary page or from ​Nokia Store.

– Hamish Willee (on behalf of the Projects Moderation team)

Getting Started on WIndows Phone 7 Silverlight

I have been on the road with the Nokia / Microsoft outreach
program and we have been teaching Windows Phone 7 programming to developers in
Paris, Madrid, Milan, and Berlin. This has been occupying my time and so my
blog has been suffering.

A couple of weeks ago I promised that I would discuss the
process of moving a Qt/QML data driven application to Silverlight. As you may
recall, I did a similar series of blog posts on moving a side scrolling game
from Qt/QML to XNA.

The project of moving a data driven application is somewhat
more complex because you have to worry about mapping pages, page flows, and
page controls from QML into Silverlight. This can be challenging if your
application was developed before the release of Qt Components for Symbian and
you developed your own equivalent of a page stack.

In this series, I will make the assumption that you have a
page stack model for navigating pages my pushing and popping pages on the page
stack. If you have a more hardwired page model, then you will have to make
adjustments to your code to map your method of page navigation into
Silverlight.

Some of the other challenges in moving code from Qt/QML to
Silverlight is the lack of Signals and Slots in C#. There is a comparable
mechanism that allows you to create and connect custom events with custom event
handlers that can be used in place of Signals and Slots. There are some “gotchas”  in using events, but we will discuss those
later in this series.

In moving an app from QML to Silverlight I have identified six
steps that can act as a “porting” process. These steps are as follows:

  1. Identify the QML or Qt Pages.
  2. Determine the Page states
  3. Map the Page navigation model
  4. Enumerate the Page Controls
  5. Identify signal and slot Connections between
    objects
  6.  Map Pages into Silverlight visual  Page Specifications (XAML)  and C# objects
  7.  Find  Silverlight
    equivalents for APIs, controls, and connections

 

It is important to understand that many of the algorithms and much of the code written in JavaScript
and C++ can easily map into Silverlight code behind the Visual Page Specifications.

To
understand this process, you must first understand how Silverlight works. If
you have used Silverlight or Windows Presentation Framework (WPF) in
another context, then these concepts can be directly applied to Windows Phone 7
programming.  If you don’t know anything
about Silverlight, then you are in luck because I will spend my next blog
reviewing the structure of a Silverlight application. This will include an
explanation of the organization or Silverlight applications, XAML, and  the concept of C# code behind.

Nokia Store QML client in Nokia Beta Labs

Nokia Beta Labs released a new Nokia Store client with a Belle look and feel for some devices.

The Nokia Store is a QML client available for the following devices: Nokia C6-01, C7-00, C7 Astound, E7-00, N8-00, X7-00.

Just installed and looks and works fine, pretty fast scrolling. Seems updates for apps are not working but not sure yet!

Nokia Beta labs is looking for feedabck.

Alessandro

Highway Racer is #1 on Ovi Store

I would like to share our success so far on Nokia’s Ovi Store with our Flash Lite based game Highway Racer. You can read my previous post for our initial experience of publishing.

We are really happy with our experience so far. Highway Racer reached #1 spot in Sports category, and #3 spot in overall Games category on Ovi Store in just four days after published on Ovi Store for Pakistan region.

Now it’s 29th day on Ovi Store, it’s been jumping up ‘n down in top 30 games. Highway Racer have been downloaded 175000+ times and counting, on it’s way to million downloads. It’s current rating is 4 stars with 149 reviews.

Highway Racer is also reviewed by two popular mobile technology blogs, SenseApplied and TechProlonged.

This is quite a big achievement for our team at Orison Technologies.

Highway Racer - Promo 3

As of yesterday, Highway Racer is one of the featured applications on Ovi Store, and also it’s on #1 spot for Games and Sports sections. Thanks to Nokia team for the help on this :)

We have decided to keep Highway Racer free for more time as we work on an updated version. So, if you haven’t downloaded Highway Racer yet, just visit Ovi Store now!

// chall3ng3r //