Sloan School Mobile Developer Survey

kevinSharp | 24 November, 2010 22:46

Students in the MarketLab at the MIT Sloan School are trying to learn about the mobile developer ecosystem, and to that end they prepared a short survey to collect information about the current developer landscape and attitudes about potential future developments. If you have a couple of minutes to lend your opion, it will be be appreciated.

>> Take the short survey

Introducing Two Phones with High Functionality, Low Prices

pkrass | 22 November, 2010 19:54

The new Nokia C2-01 is based on the Series 40 6th Edition platform, and it features a traditional keypad, 3.2-megapixel camera, music player, FM radio, and up to 16 gigabytes of user memory. Shipments will start in the first quarter of 2011, and the retail price will be 70 euros, making the Nokia C2-01 the company’s lowest-priced 3G phone.

The new Nokia X2-01 is designed for social networking and fast communications. Also based on the Series 40 6th Edition platform, it features the new Communities app that integrates Facebook, plus a full QWERTY keypad, media player, FM radio, VGA camera, and up to 8 gigabytes of user memory. The Nokia X2-01 will ship in this year’s fourth quarter, and it will retail for 80 euros.

Meet the Nokia C2-01 and Nokia X2-01.

View the Nokia C2-01 technical specifications.


View the Nokia X2-01 technical specifications.

Ovi Store Downloads Reach 3 Million Per Day

jasonblack | 18 November, 2010 12:38

Nokia today announced that Ovi Store has reached 3 million downloads per day and 92 developers each topped the 1 million download mark. Additionally, Nokia is gaining significant software developer momentum, with more than 400,000 new developers joining Forum Nokia in the past 12 months.  

In related news, the Nokia Qt Software Development Toolkit (SDK) and the Qt SDK combined have been downloaded 1.5 million times as developers discover this approach can improve the speed and efficiency of creating apps for mobile devices, including smartphones such as the new Nokia N8, Nokia C7 and Nokia C6-01, which are shipping, as well as the recently announced Nokia E7. 

As a reminder, last month Nokia announced unified application development around the Qt framework to simplify creating apps for Symbian-based devices and products that will be powered by the new MeeGo operating system.

“The rapid growth on Ovi Store to pass the 1 billion annualized downloads mark demonstrates that Nokia is a competitor in both scale and size when it comes to its services,” said Scott Ellison, vice president of mobile and consumer connected platforms at IDC. “With Nokia’s stronger focus on the Qt platform and improved developer ecosystem, Nokia should continue to see its developer numbers increase as developers see profit from new revenue shares, operator billings and the ever-growing user base around the world.”

For more information, please see:

92 Developers with Over 1 Million Ovi Store Downloads

jasonblack | 18 November, 2010 12:34

Nokia today announced that 92 developers and publishers from around the world have more than 1 million downloads of their Ovi Store content.

The following list presents developers and publishers, alphabetically by region, that have reached this significant milestone. Additionally, links to success stories that have been written about several of these publishers are included below.

EMEA region:

•    3D Arts (Jyväskylä, Finland) - Success story
•    Alibro Ltd. (Chalfont St Giles, United Kingdom)
•    Capree Ltd. (Warsaw, Poland)
•    Connect2Media (Manchester, United Kingdom
•    Dada.net SPA (Florence, Italy)
•    eBuddy B.V. (Amsterdam, Netherlands)
•    FindMe Ltd. (Riga, Latvia)
•    Finndesign Oy (Helsinki, Finland)
•    Fox Mobile Distribution GmbH (Berlin, Germany)
•    fringland Ltd. (Tel Aviv, Israel) – Success story
•    F-Secure (Helsinki, Finland) - Success story
•    Gameloft SA (Paris, France)
•    Gedda-Headz A/S  (Klambenborg, Denmark)
•    Gnokkia Themes (Antignano d’Asti, Italy)
•    Guided Ways Technologies Ltd (Slough, United Kingdom)
•    HeroCraft (Kaliningrad, Russia) – Success story 
•    Hyperkani Oy (Tampere, Finland)
•    Idevio AB (Göteborg, Sweden) – Success story 
•    Infinite Dreams (Poland)
•    innerActive (Tel Aviv. Israel) – Success story
•    I-play (London, UK)
•    Khomyakov Konstantin (Krasnodar, Russia)
•    Liquid Air Lab GmbH (Stuttgart, Germany)
•    Lunaforte (Hoorn, Netherlands) – Success story
•    M2Mobi (Amsterdam, Netherlands)
•    MobiFun Soft (Sofiya, Bulgaria)
•    Mobile Excellence International BV (Emmen, Netherlands)
•    Mobstar Media Ltd (East Sussex, United Kingdom)
•    Mopius (Sankt Pölten, Austria )
•    Nimbuzz (Capelle aan den Ijssel, Netherlands) – Success story
•    Numo AS (Oslo, Norway) – Success story
•    Offscreen (Helsinki, Finland) – Success story
•    Opera Software ASA (Oslo, Norway)
•    Petr Medek (Holešov, Czech Republic)
•    Pico Brothers Ltd. (Vaasa, Finland)
•    Pizero Design by Michele Cerreta (Lucca, Italy)
•    Polarbit AB (Stockholm, Sweden) – Success story
•    Ravensoft Ltd (Manchester, United Kingdom) – Success story
•    Shazam Entertainment Ltd. (London, United Kingdom) – Success story
•    Skiller Ltd. (Kfar Saba, Israel)
•    Skype Software S.a.r.l (Luxembourg)
•    Smartphoneware (Odessa, Ukraine)
•    Snaptu (London, United Kingdom)
•    SPB Software (Saint Petersburg, Russia)
•    Sports Tracking Technologies Ltd. (Helsinki, Finland)
•    Syntonetic Media Solutions (Frederiksberg, Denmark) – Success story
•    Tequila Mobile SA (Wroclaw, Poland)
•    UAB TeleSoftas (Kaunas, Lithuania) – Success story
•    Vanixon GmbH (Hombrechtikon, Switzerland)
•    ZingMagic (Amersham, United Kingdom)

Americas region:
•    A3 Media Network (Denver, CO)
•    ADA Sport Inc. (Los Angeles, CA)
•    Digital Chocolate (San Mateo, CA)
•    Electronic Arts (Redwood City, CA)
•    Facebook (Palo Alto, CA)
•    Google (Mountain View, CA)
•    Impetus Technologies, Inc. (San Jose, CA)
•    Inode Technology (Chihuahua, Mexico)
•    Mobile Services International Inc. (Coral Springs, FL)
•    Oakley (Foothill Ranch, CA)
•    Paramount (Hollywood, CA)
•    PepsiCo (Purchase, NY)
•    PopCap Games, Inc. (Seattle, WA)
•    Qik, Inc. (Redwood City, CA)
•    R/GA (New York, NY)
•    skyrockit (San Francisco, CA)
•    Transclick (New York, NY)
•    TuneWiki (Milpitas, CA) – Success story
•    XiMAD Inc (San Francisco, CA)

China:
•    Beijing Qihoo Technology Co. Ltd. (Beijing)
•    Beijing Sina Internet Information Service, Co., Ltd. (Shanghai, China)
•    Homeless Limited (Hong Kong)
•    JK Media Limited (Hong Kong, China)
•    Lei Ting Wan Jun Network Technology Ltd. (Beijing, China)
•    MMMOOO (Shanghai, China) – Success story 
•    NetQin Mobile Inc. (Beijing)
•    ThinkChange LTD (Shanghai, China)
•    White Complex (Hong Kong, China)
•    Zensis Ltd. (Hong Kong, China)

APAC region:
•    Aims MIGITAL Technovations Pvt. Ltd. (Delhi, India)
•    Al Siraj Ltd. (Kerala, India)   
•    Arch Mobile Solutions Private Limited (Chandigarh, India)
•    Breakdesign Pte Ltd (Singapore)
•    CELL Co., Ltd. (Tokyo, Japan)
•    cellspecial (Tokyo, Japan)
•    Dalrus Private Limited (Singapore)
•    FrienzPlay / Jmap Inc. (Taipei, Taiwan)
•    Fsspecial (Tokyo, Japan)
•    Hosee Studio Co. (Taipei, Taiwan)
•    Indiagames (Mumbai, India)
•    Nextwave Multimedia Pvt Ltd. (Chennai, India)
•    Spice Labs (Delhi, India)

Our congratulations to all of the companies that are seeing success in Ovi Store. 

Top Ovi Store Downloads by Region

jasonblack | 18 November, 2010 12:33

“Ovi Store is on a strong trajectory fueled by new apps and games from a growing number of partners and more than 250,000 new consumers signing up for Ovi every day,” said Tero Ojanperä, executive vice president, Services, Nokia.

“The number of daily downloads has increased from about 2 million to 3 million since September," Ojanperä added. "We anticipate our progress will continue as we have just begun shipping our new Symbian smartphones.”

Examples of popular and creative new Symbian smartphone content in Ovi Store include:

  • Swype: With one continuous finger or stylus motion across the virtual keyboard, Swype ’s technology enables users to input words faster and easier.
  • NHL GameCenter: Keep up with your favorite hockey team by listening to live radio, checking stats and scores, or by watching highlights and condensed games.
  • WhatsApp Messenger: A smartphone messaging app that uses 3G or WiFi  to connect with friends and family. Switch from SMS to WhatsApp to send and receive messages, pictures, audio notes, and video messages at no cost.

Since Nokia began shipments of its new Symbian smartphones, starting with the Nokia N8 on 30 September, here are some noteworthy app facts: 

  • The top downloaded free app globally was Q Torch, a utility app that turns your device into a flashlight, by CellApp Technology of India (also among top three in Europe, India and Southeast Asia/Pacific);
  • The top downloaded paid app was Angry Birds, the smash hit game, by Rovio Mobile of Finland (also among top three in North America, Southeast Asia/Pacific and Europe); and
  • The third most popular item downloaded globally was Need for Speed Shift HD, a game that delivers the thrill of high-performance racing by EA Mobile of the U.S. (also among top three in Central and South America, and Southeast Asia/Pacific).
Review the chart below for details regarding the most popular regional apps and their developers:

Top Ovi Store downloads by region for N8
 

Developers Share Experience Using Qt

jasonblack | 18 November, 2010 12:32

Developers are seeing the benefits of publishing their apps through Nokia's Ovi Store, as evidenced by today's announcement made by Nokia. In fact, more than 400,000 new developers signed on to Nokia in the past 12 months.  

“Without any promotion or marketing dollars, in a few weeks we’ve hit 200,000 downloads in Ovi Store faster than we did with App Store,” said Anton Gauffin, CEO of BLStream, creator of the game Crazy Hamster.  “We’re very positively surprised with what we’ve seen on Ovi, and we’re on track to exceed our App Store performance even though we’ve been there longer.”

In these developer interviews, you can learn more about how they are developing apps for Nokia devices using Qt.

Miro Beran, an Android developer talks with us about developing apps for Nokia devices with Qt: 

 

Girish Gaitonde, CEO at Xoriant
, talks about how Forum Nokia has supported his companies efforts with developing and porting their apps to Nokia's devices using Qt:



Anton Gauffin, CEO of BLStream, talks about the success he's seen on Ovi Store with their Crazy Hamster game, developing with Qt and considerations for localizing apps and games:

More video interviews are available on Forum Nokia's YouTube channel

Nokia Data Gathering: Open-Source Mobile Data Collection Improves Lives

kevinSharp | 18 November, 2010 00:32

Fresh from Forum Nokia Projects, Nokia Data Gathering is an open-source application that helps organizations to collect data using mobile phones and deliver it for near-real-time analysis. Check out this video to see how Nokia Data Gathering is helping to fight Dengue feaver in Brazil:

The open source project makes Nokia Data Gathering freely available for download, customization, and enhancement. Modify the mobile or server code (both in Java) for your particular need. Suggest future features. Contribute code back to the community so other organizations benefit from your insight.

The project includes the Nokia Data Gathering Playground, a hosted server that allows you to play around with the creation of surveys, send them to mobile phones and export the results for analysis.


>> More information about Nokia Data Gathering
>> Details about Nokia Data Gathering playground
>> The open source Nokia Data Gathering project including full source code, forum, and Wiki.
 


Make your transitions dance with easing curves

kevinSharp | 16 November, 2010 19:22

It's the difference between walking and dancing. Simple transitions visually walk a user from one state to another. With a technique called "easing curves" your transitions dance. An example in the Qt Creator IDE shows you how.

First, try to have the animation tell the user something. For example, a wipe transition from one Powerpoint slide to another may be visually interesting, but all you learn from the transition is that you're now looking at a new slide. On the other hand, minimize a window on a Mac  and the animated transition guides your eye from where the window was to where the minimized icon is placed.

Next consider the physics of the animation. In a simple animated shift, an image moves at a constant rate of speed between initial and final positions. If the window were a physical object, the movement would require infinite acceleration to move from stationary to the transit speed, then the object would suddenly stop as if it ran into a solid brick wall. The human brain finds such a movement jarring. Objects in the real world have acceleration curves. Different physical systems exhibit different characteristic curves. Easing curves are the way to define and manipulate the way your objects move.

In your Qt Creator you will find a full example of Easing Curves. From the Welcome screen click Choose an Example/Animation Framework/Easing Curves. You'll see full source code to apply a variety of easing curves to your animations. Here's your chance to make them dance.

 

 

New Qt API includes IPC

kevinSharp | 15 November, 2010 21:22

Communication among objects in a Qt application is provided by signals and slots. The signal and slots mechanism has been a core power of the Qt framework, radically simplifying the task of structured communication among C++ objects. Signals and slots are connected with the function:

QObject::connect (object 1, signal 1, object 2, slot 2)

Signals and slots require a developer to know about all objects that need to communicate, and the objects to which they need to communicate. No such omiscience is possible for interprocess communication. Communication between Qt applications requires a different mechanism.

Cross-platform communication between Qt applications will be handled by the Qt Service Framework, part of the Qt Mobility 1.1 API released last week.

The Qt Service Framework defines a unified way of finding, implementing and accessing services across multiple platforms. Due to the service framework's knowledge of service interfaces, their versions and QObject-based introspection it may even be used to unify and access multiple platform specific service implementations via the same Qt-based client application.

The online documentation provides details and sample code for an echo client. Multiple clients can be run to communicate with one another using a shared instance of the echo service, or privately with a unique instance. The second echo client is for running a second identical instance on Symbian which usually does not allow starting the same program multiple times.

The APIs in the Mobility API 1.1 release include:

  • Bearer Management  An API to control the system's connectivity state.
  • Contacts An API enabling clients to request contact data from local or remote backends.
  • Document Gallery An API to navigate and query documents using their meta-data.
  • Feedback An API enabling a client to control the vibration of the device (when a vibrator is used) or the piezo feedback from the screen.
  • Location The Location API provides a library for location positioning, landmark management and mapping and navigation.
  • Nokia Ovi Maps online-maps plugin available in the new Maps and Navigation API (part of the Location API)
  • Messaging The Messaging API enables access to messaging services.
  • Mobility QML Plugins A set of QML compatible plugins for the Mobility Project.
  • Multimedia Provides a set of APIs to play and record media, and manage a collection of media content.
  • Organizer An API enabling clients to request calendar, schedule and personal data from local or remote backends.
  • Publish and Subscribe The Publish and Subscribe API, containing Value Space, enables applications to read item values, navigate through and subscribe to change notifications.
  • Qt Service Framework A set of Qt APIs to that allows clients to discover and instantiate arbitrary services.
  • Sensors The Sensors API provides access to sensors. Accelerometers are the most common, but the API supports all sensor types including for example ambient light, magnetic compass, and proximity sensors.
  • System Information A set of APIs to discover system related information and capabilities.
  • Versit An API to import and export to the vCard and iCalendar formats.

 

The Qt-Megamind Connection

kevinSharp | 09 November, 2010 23:55

And you thought you did cool stuff with Qt. This past weekend Dreamworks Animation SKG released Megamind and captured top box-office honors, raking in almost $50 million USD. If you were lucky enough to attend one of the Qt Developer Days events you heard how Qt plays a role in the production of some of the most imaginative story-telling to grace the big screen.

Kenn LeGault, Director of Research & Development, DreamWorks Animation, provided the overview in his keynote address. A typical Dreamworks production takes about five years from start to finish, and for two years there is a dedicated production staff of about 200 people per film. Add another 250 "global" software people who work on core infrastructure. Their supercomputer (they call it a "rendering farm") harnesses 20,000 processing cores.

Gene Ragan, Principal Engineer, DreamWorks Animation, went into more detail. He discussed the challenges presented when attempting to migrate a very large and complex software system to a set of new technologies and workflows. Qt and PyQt were instrumental in this transition, and are the basis for the studio’s next-generation lighting tool.

For now, don't worry about the details. At Dreamworks, technology serves the artists and story-tellers. If you want to see what Qt can do, check out the trailer. Better yet, go see the movie in your local cinema or IMAX theatre.

 

Competition Seeks Innovation Suggestions for Africa

pkrass | 09 November, 2010 09:00

Do you have suggestions for accelerating innovation and entrepreneurship in Africa? If so, the Open Innovation Africa Summit wants to hear from you. The Summit, co-sponsored by Nokia, is now accepting ideas from developers in any of four categories: ecosystem for innovation; sustainability models for base of the pyramid; mobile information society; and human capital – education for all. The top eight contributors will be invited to participate in the Summit, which will be held on 29 November – 1 December. But hurry, all suggestions are due by 12 November.

Learn more about the Open Innovation Africa Summit, and contribute your ideas today.

‘Expect more rapid innovations for Symbian platform’ says Nokia CTO Rich Green

jasonblack | 08 November, 2010 16:55

Changes to the Symbian Foundation were announced earlier today, and at the same time, Nokia reaffirmed its commitment to Symbian, the world’s most widely used smartphone platform.

“Nokia will continue to invest in the development of the Symbian platform; and we plan to make the software available to the Symbian ecosystem via an alternative, direct and open model.  Developers can expect more rapid innovations for the Symbian platform, occurring in a timely and iterative manner,” said Nokia CTO Rich Green. “And rest assured, we will deliver an exciting portfolio of Symbian-based smartphones to consumers worldwide,” he added. 

Nokia’s recent decision to focus on Qt as its sole application development framework is expected to bring greater efficiency and speed of evolution to the Symbian platform. This will help to ensure app compatibility with future Symbian platform versions, and enable more frequent updates and upgrades for Nokia smartphones.

To offer more insight about these changes, and to answer questions about the announcement from last month, Nokia’s Green had some further statements on our commitment to innovating the Symbian operating system and about our increased focus on Qt as our sole development platform:

“Anyone who heard the things Nokia said about Symbian at Nokia World 2010 in London, can have no doubts about our commitment to this development platform. We believe that Symbian is the best development platform to cover a range of mobile devices. Symbian was built for mobile; and has the capacity to be a highly tuned and rich environment for our customers and developers.”

On top of that core platform, developers use frameworks to develop things like the user interface, applications, and services. It’s the framework that we can use to customize the experience depending on the device and the latest capabilities. On our latest Symbian devices, we had multiple development frameworks. A developer doesn’t want to try and work out which framework to use. They want to know they can develop an application and it will work on your device. Ideally, they want it to work on more than one device. They want it to reach the largest possible global audience and to continue to work in the future.

For most of 2010 Nokia has been encouraging developers to use Qt. To show how seriously we take that decision we not only stopped all Nokia development in other frameworks, we committed to redeveloping key Nokia applications and services that weren’t already in Qt.

Nokia has been working hard on developing in Qt, as evidenced by the introduction of Qt Quick, which makes rich, visual applications and services even easier to develop. We are confident that by focusing on Qt and Qt Quick as our sole application development strategy, we will increase the opportunity for developers, constantly improve the experience for users and extend the joy that people get from a single device.

The news today about our being able to take greater control over the innovation of the Symbian platform is good news and complementary to the strategy we are executing.”

Update (9 November 2010): In response to comments about this blog post regarding MeeGo, and the status of Web Runtime, please note the following:

MeeGo is the platform we announced together with Intel for products that go beyond the capabilities of today’s smartphones. It is intended to work across not just a range of mobile handsets but also to other domains, including in-vehicle infotainment systems, netbooks and tablets. As MeeGo already supports Qt, our strategy announcement did not represent a departure. It should be a great encouragement for developers who can start writing in Qt for Symbian and the Nokia N900 today, and then easily bring their applications to MeeGo in the future. You’ll hear more from us about MeeGo next year.

Symbian continues to support the Symbian Web Runtime, however we will not be making further investments. We are now focused on offering a leading application development platform with Qt and Qt Quick. Qt does of course include support for HTML5 with Qt Quick, bringing - amongst many things - a JavaScript-like declarative language. Our browser will also support HTML5.

Community runs deep at Qt Developer Days

kevinSharp | 05 November, 2010 18:59

Visual for the Nokia Qt SDK.

I learned more in three days at Qt Developer Days than I have learned in any month that I can remember. The most impressive learning is the deep sense of community that pervaded the conference. I have been to and helped produce more technical conferences than I care to remember, and this one stands out.

It started with the conference staff. On Monday (opening day) I asked a couple of people at the greeting desk if they could point out a few people I know from email and phone conversations but had never met in person. In both cases the person not only stood up to get a better look, but came out from behind the desk and walked around the conference area with me to see if they could make the connection. OK, that's good. Here's what's seriously impressive: Tuesday evening, during the reception, both of these people noticed me in the crowd, walked up to me, and made sure I had found the people I had been looking for. They remembered me by name, and remembered the names of the people I was seeking.

It continued with coversations I had with industry stakeholders. I had an executive tell me that their company had asked for and received much support from the Qt community as they executed their technology strategy. "Of course, you're a major customer" ran through my head. This person doesn't see it that way. They plan to contribute back to the community a significant part of the code base they developed. Not because they have to, not because they are legally obligated to, but because it's the right thing to do and it's good for business. The community helped them, they will help the community. 

This sense of community is expected and reciprocated. Kenn LeGault, Director of R&D for Dreamworks animation, delivered a keynote discussing how Dreamworks uses Qt throughout their animation pipeline. When you see trailers for Megamind as it opens this weekend, think about the technical challenges of their line of business. A production takes about five years from start to finish, and for two years there is a dedicated production staff of about 200 people. Add another 250 "global" software people working on core infrastructure. Their supercomputer (they call it a "rendering farm") harnesses 20,000 processing cores.

Dreamworks recently converted their development processes to Qt; all new development at Dreamworks will use Qt and PyQt. One of the first questions from the audience was (and I paraphrase): "You have some excellent code. What are you going to contribute to the community?" The question surprised me. In most settings it would be taken as a challenge. In many environments the questioner would be laughed out of the room. Not here. Kenn said he was asked the same question in Munich, and Dreamworks is looking at contributing "what makes sense". Stand-out technology in the service of artists and story tellers is Dreamworks' "secret sauce" and nobody expects them to give it away. But there are areas where it makes sense to collaborate.

Finally, I want to tip my virtual hat to the technical staff at the conference with two short stories. I attended the Qt Essentials tutorial on Monday. I walked in with different goals than most others in the room. Most everyone else (I assume) needed to leave the conference ready to code in Qt for a living or tell their management why Qt should not be adopted by their project or company. I had much more modest goals. I wanted to get better at talking to technical experts about details of the Qt code they created and I wanted to get better at communicating with others about how to create great code. The trainers of course assumed I was in the "gotta do this for a living" camp.

About mid-way through the afternoon the instructor gave us all an excercise to create from scratch a particular project. One of the Qt experts in the room noticed that instead of trying to write it from scratch, I was instead looking at examples in the SDK that illustrated the same principles in more complex settings. He asked me if I was having trouble, and offered to "sit down and help as long as it takes." I explained that I was getting everything I needed out of the session, and then some. He noticed what I was doing and offered help without making me feel like I was too dumb to be in the room. I won't mention other technology vendors here, but let's just say I have been in the same situation in other tutorial sessions from other suppliers, and the attitude could not be more different. 

On the final day of the conference I took my develpment machine into the room where Qt and Forum Nokia experts were available to help with technical problems. I was having trouble with an interaction between the Nokia Qt SDK and the Qt Open Source SDK that I had sequentially installed. The first expert I asked said he didn't know how to fix it but walked me over to the person who could. This second person proceeded to apologize for the fact that the SDKs didn't behave the way they should. There was no "let's see what you screwed up", it was all "let's get this fixed and make sure it doesn't happen to somebody else." When the problem was solved (I'll post a blog on the solution later) he asked if there was anything else he could do, and proceeded to walk me through the process of doing on-device debugging on Symbian and Maemo devices using the latest Qt Creator.

This has been a great week. If you ever get a chance to attend a Qt Developer Days, seize the opportunity. The sense of community you feel online is nothing compared to what you get in person.

Nokia C6-01 Starts Shipping

pkrass | 04 November, 2010 16:40

The Nokia C6-01 is now the third Symbian^3 device to ship. Announced in September, the Nokia C6 is a lightweight (131 grams) device that features a 3.2-inch AMOLED touch screen with ClearBlack technology, 8-megapixel camera, and up to 32 gigabytes of user memory. Two other Symbian^3 devices, the Nokia N8 and Nokia C7, started shipping in September and October, respectively.

Learn more about the Nokia C6-01 shipments.

View the Nokia C6-01 technical specifications.

 

What "cross-platform" means for a Qt developer

kevinSharp | 02 November, 2010 23:49

I'm at Qt Developer Days this week in San Francisco, and one line of questions I keep hearing from developers relates to the cross-platform promise of working with Qt. It came up in yesterday's Qt Essentials tutorial. I overhear the question in the halls. This morning Nokia CTO Rich Green answered the question in his keynote.

Rich clarified, in essence, that MeeGo and Symbian are two different platforms. "There is no promise of a 'write once, run twice' environment for Qt across Symbian and MeeGo platforms," he explained. There is no guarantee that all software and hardware interfaces available on one platform will be made available on the other. He DID promise that a public interface available on one platform will remain stable on that platform and that developers will know in advance when interfaces will be changed or deprecated. He also said that to the greatest extent possible when a capability is available on both platforms that the interfaces a developer uses to access those capabilities will be identical.

I can provide an example from a conversation I had last week with Forum Nokia Champion Thomas Perl. (The conversation will become a podcast after I return from this conference and have time to edit the recording.)

Thomas is developing a fun little game called That Rabbit game. The game controls use the accelerometer on the device to allow the player to steer game objects by tilting the device. He built an implementation in Qt for Maemo 5 (N900) and then ported it to Symbian^3 (N8) in less than a day. 

Almost everything from the Maemo build worked without modification on Symbian with the following two exceptions:

  1. The accelerometer axes point different directions on Maemo and Symbian^3. The software interface is identical, but where the x, y, and z axes point in relation to the screen orientation do not agree. The natural "up" for a Symbian device is different than that of a Maemo. Solution: a simple compiler directive conditionally inserts code to perform an axes transform if the game is being compiled for Symbian^3.
  2. The N900 does not automatically change from landscape to portrait display mode depending on the orientation in which the device is held; players of Thomas' game were free to steer at will without triggering rotations. That makes sense as a platform behaviour on the N900, not on an N8. Again, a compiler directive automatically inserts into a Symbian build some code Thomas downloaded from the Forum Nokia Wiki to suspend auto-rotation.
That's the difference between cross-platform (which Qt is) and platform-agnostic (which Qt is not). At the end of the day 90%+ of Thomas' code ported without modification from Maemo 5 to Symbian^3. The remaining code relates to differences in platform design, and are easily handled with compiler directives. Thomas still has a single code base, so any upgrades he makes to the core gameplay automatically flow to both platform builds.
1 2  Next»
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved