dcsimg
December 10, 2016
Hot Topics:

Mobile Development: Why Should I Care? A Q&A with Nokia

  • April 25, 2005
  • By Bradley L. Jones
  • Send Email »
  • More Articles »

Dev:

What would an existing developer who knows a standard language such as Visual Basic, Java, or C++ need to learn in order to start building applications for mobile phones?

Nokia:

The most important thing for a new mobile developer to think about is the architecture of the applications, not the language in which they're written. Mobile applications by their nature need to access network connections to gain value from their mobile nature, but tolerate interruptions in that connection due to the nature of mobile networks. Nokia helps with standard interfaces including OMA DataSync and Web Services APIs.

Developers also need to consider the target devices, including form factor, resources, and a different UI paradigm than they're accustomed to in desktop development. Here's another area where Nokia is leading the way. Our platform approach to device development dramatically decreases the variation in capability and API availability with which a developer needs to cope.

The language aspect is relatively easy. Most experienced Java and C++ developers can continue to work in the development environment of their choice. Nokia SDKs plug into the most popular IDEs and embed all the classes and documentation into the installation. There are a few new idioms to learn, but the nature of the languages does not change. Those interested in a jumpstart can always attend one of the Nokia-designed intensive training sessions held around the world.

Dev:

How would these developers test their applications? Do they need a special phone?

Nokia:

Today's developers don't need a special phone. They test applications first in an emulator environment built into the Nokia SDKs. Nokia even provides an environment for testing multi-user interactions. Developers can simultaneously run multiple emulators and test message flow between instances of the application. When this testing is done they compile and build distribution files, then load their applications onto any supported phone for further testing. Even for on-device testing, it's a standard phone.

Dev:

Once a mobile application is created, how would you recommend a developer to distribute their applications within their own organization or to sell their application?

Nokia:

It depends on whether the application was developed for internal use or for commercial sale. Developers can distribute an internal application over the air by sending a link to a download site and having users download and install the app. They can also distribute the applications to a PC desktop and install the application in the mobile device using Nokia PC Suite. We've recently opened some PC-side APIs to PC Suite, so in the future companies will be able to automate these installations.

Selling applications of course involves some additional steps. Last fall, Nokia launched Preminet Solution, an open, customizable, end-to-end sales channel. We already have network operators selling content through the channel, and an extensive catalog of Java applications, Symbian applications, ringtones, graphics, and videos. All executable applications in Preminet are verified through the Java Verified. or Symbian Signed programs.

Dev:

According to Nokia, which is the better product — Coca-Cola or Pepsi?

Nokia:

That sounds like you're asking for vendor lock, Brad. Nokia believes in open systems, so we support both colas.

Dev:

Going back to the devices — are there any new features coming into mobile devices that will cause developers to take notice?

Nokia:

There are always improvements in speeds and feeds. More memory, more processing power, bigger displays, better battery life.

More to the point, notice the expansion of development alternatives. Nokia recently released a Python environment for Series 60 Platform and support for MacroMedia Flash. That means developers now have the choice of four environments for Series 60 Platform. All running on the same devices.

Developers, especially enterprise developers, should also consider peripherals. Many Nokia phones support Bluetooth, and we're working closely with H-P to support printers and projectors over that link. Lots of GPS devices now include a Bluetooth interface, as do some cars. Some Nokia mobile phones include RFID tag readers and Near Field Communication interfaces. This increasing support of peripheral interfaces means enterprise developers can write mobile applications that interact with the environment around the user. That's powerful stuff.

Dev:

One issue with using phones for applications is the drain on the battery. An application can drain the battery in a phone quickly. Are there things being done to help alleviate the power drain on mobile devices or to help make the device more adept at handling applications? We had heard that there were phones being created with multiple processors. A less powerful processor would be used most of the time to drive the device and the more powerful processor would only "kick in" when an application was ran. This would help alleviate battery drain. Are there other features such as this that will aid in supporting custom applications?

Nokia:

Battery life vs. weight and size is one of the ongoing challenges of mobile device design, and Nokia is constantly improving the consumer experience in this area. I can't talk about specific design strategies, but I should note that Symbian OS v9 gives us more flexibility in processor implementation than ever before.

Dev:

What other type of performance issues do developers need to take into account?

Nokia:

Perceived latency is a key criterion for mobile UI design. Packet latency over mobile networks is an order of magnitude greater than over the wired Internet, and mobile bandwidth is growing but still limited. It's critical that users see immediate acknowledgement of their action, even if it takes some time to complete their request. So, for example, immediately acknowledge when a user presses the "download now" key, then continuously update a progress bar until complete or even push the download completely into the background and let the user move on to other tasks.

Dev:

What about security? Does Nokia provide developers with any assistance there?

Nokia:

Nokia provides security features for a variety of development needs. Java provides a sandbox execution model that is inherently more secure than a typical C++ environment. The MIDP 2.0 environment expands on MIDP 1.0 security by adding a trust model, supported by application signing, and thereby opening up some sensitive functions including access to the user's calendar and contacts list. Symbian OS v9 (the foundation of the Series 60 Platform 3rd Edition) includes an enhanced security model. We embed support for HTTPS connections, VPN clients, and crypto libraries in many of our devices. And because we're an open platform, developers can buy additional security capabilities from other developers and are free to develop some themselves. I mentioned a little bit earlier offerings from Symantec and Pointsec.

Dev:

Why should developers develop on Nokia instead of competing platforms?

Nokia:

Our open platform approach offers the biggest opportunity in the mobile market and minimizes the barriers to enter the market. We've shipped more than 180 million Developer Platform devices. Exceeded 20 million Series 60 Devices in the field, sold by the majority of the network operators worldwide. Our devices account for a big chunk of the 15 million mobile Java downloads per month in 2004. The open approach leverages existing developer skills, since we support standard languages including Java, C++, Python, and Flash. And we've got a sales channel that can get your commercial applications to market.


Srikanth Raju is Senior Technology Manager and Head of Technical Services and Consultancy, Americas Region, Forum Nokia. In this capacity, Srikanth leads a team of Nokia technology experts tasked with helping software developers and partners to develop and deploy solutions on Nokia mobile platforms.

Prior to joining Nokia, Srikanth was Staff Engineer and Principal Java Wireless Technology Evangelist at Sun Microsystems. He was previously Lead Software Engineer at Oracle Corporation, prior to which he held several executive management positions related to software development at Borland International.

A recognized authority on Java, Srikanth is also the owner of a patent-pending invention using the J2ME and JavaCard Technologies and is a Sun Certified Programmer for Java 2 Platform.

# # #





Page 2 of 2



Comment and Contribute

 


(Maximum characters: 1200). You have characters left.

 

 


Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Sitemap | Contact Us

Thanks for your registration, follow us on our social networks to keep up-to-date
Rocket Fuel