Exploring Net60

August 27, 2008

What Is Net60?

The Net60 platform from Red Five Labs is a .NET Compact Framework v1.0 implementation for Symbian OS. It provides you with a managed cross-platform environment, so you can happily run your applications on both Windows Mobile and Symbian OS-based Smartphones. You could say that it is too good to be true. All your existing skills will be re-used? You still can work in familiar MS Visual Studio 2003/2005 IDE? Real paradise... Well, it does not fully reach such a state (yet), but the shot is indeed pretty close. I forward you to Net60's data sheet for more evangelic descriptions, so let me highlight just some key points about the existing package.

As mentioned earlier, the recent available release of Net60 is binary compatible with .NET Compact Framework v1.0. Moreover, you can deploy only your Smartphone applications. And, only to Nokia S60 phones. As you can find in the FAQ section of the Red Five Labs website, there are plans to support CF.NET v2.0 in the future as well as Pocket PC applications. Smartphone and Pocket PC projects roughly map to the S60 and UIQ style of UI respectively, so this gives you a general idea of what to expect. Besides, you have other nice features available, such as a relatively small footprint, garbage collection, debugging support, and so forth. Just look at the namespaces list:

System.*

System.Collections.*

System.ComponentModel.*

System.Diagnostics.*

System.Globalization.*

System.IO.*

System.Net.*

System.Security.*

System.Text.*

System.Threading.*

System.Reflection.*

System.Resources.*

System.Windows.*

System.Drawing.*

System.Web.Services

System.XML.*

System.Data

There is no database support yet, but it is also planned. Among those supported paradigms you will find even PInvoke, so you can even call native Symbian APIs if you really need to.

What Do You Need for Net60?

The system requirements for Net60 are relatively simple:

MS Windows XP SP2 or Windows Vista

MS Visual Studio 2005 (MS Visual Studio 2003 is supported by the command line version of tools)

.NET Framework 2.0 or above

You also should have Smartphone 2003 SDK installed. The tricky part begins right afterwards. You also will be required to install the following elements:

Nokia PC Suite: Used to install runtime and DLLs (Net60.sis) onto a device and to access the Smartphone file directory from the PC.

S60 3rd edition SDK Feature Pack 1: Used to gain access to the SignSis and MakeSIS tools for code signing. You can download it from the Forum Nokia site.

ActivePerl 5.8 for Windows 32-bit from ActiveState: Used by Symbian tools chain.

Net60's tool for building installation packages (called Genesis) uses regular Symbian utilities to do the job, so all details are mainly hidden from you. But, be careful here! Although the Net60 documentation states that both FP1 and FP2 are supported, you would be required to perform a few magical passes over the Registry values if you don't use S60 3rd edition SDK FP1; otherwise, the Genesis component will be unable to find the S60 SDK root folder and therefore no SIS file will be built. So, if you installed the S60 SDK for Symbian OS 9.3 (referred to as FP2 at the Nokia site), ensure that you have the following keys in the PC Registry:

All steps necessary for the project's deployment and debugging are neatly described in the Net60 documentation. This is your real source of detailed information!

The Symbian OS specific topics are beyond the scope of this article, so if you need more info about Symbian-related developement and/or deployment, please refer to the Symbian site or Symbian Developer Network. I would mention only one problem here: the code signing. You need to sign your binaries even on Windows Smartphones, so I reckon you should be familiar with it. Under Symbian OS, the process is a bit stricter. The usual way to obtain all required certificates is via SymbianSigned. The latest policy changes made the signing process harder for new developers, but you can obtain a developer certificate for your particular phone here.

Additional Tools

There are few useful tools that come with Net60: Genesis and Log Viewer. Genesis has already been mentioned with regard to installation file creation:

It handles all the business of SIS file creation. You simply provide a few standard Symbian OS settings and you're ready to deploy your application.

With Net60, you can't debug your code in Visual Studion on the real phone. Instead, you may use the regular Smartphone Emulator or Windows Smartophone to deal with application logic. The debugging capabilities in Net60 are provided by means of log files. Such files are created on the device and may be analyzed later with Log Viewer:

Again, the Net60 documentation provides you with excellent explanations on how to enable debugging and configure Log Viewer, so I won't duplicate it here.

Conclusion

This article discussed the Net60 platform—a great asset if you plan to target Nokia phones. It is not ideal, but it looks quite promising and is definitely worth trying. You will find much more information about Net60 at the Red Five labs web site. Enjoy it!

About the Author

Alex Gusev started to play with mainframes at the end of the 1980s, using Pascal and REXX, but soon switched to C/C++ and Java on different platforms. When mobile PDAs seriously rose their heads in the IT market, Alex did it too. After working almost a decade for an international retail software company as a team leader of the Windows Mobile R department, he has decided to dive into Symbian OS ™ Core development, specializing in USB and Crypto services. Alex is an Accredited Symbian Developer and recently contributed several chapters to the popular Symbian Press book, Quick Recipes on Symbian OS.