AppForge launched MobileVB version 3 of their Visual Basic
development tool for Palm, Pocket PC and now Symbian in parallel
with the release of the Nokia 9290 in the US. This week Richard takes
a first look at the tool.
AppForge (www.appforge.com) MobileVB V3 was launched on 3 June in parallel with the
release of the Nokia 9290, the US version of the 9210 communicator.
Bringing Visual Basic development to the 9200 series communicators
promises to open opportunities to a wider audience with Visual Basics
more intuitive command set and structure when compared to the
wireless development stalwarts of Java and C++. While Symbian
already have a Basic language, OPL, implement on the 9200 series
MobileVB offers faster development with its predefined screen controls
and obviously the opportunity to create applications across a diverse
range of devices.
This week is the first in a series of occasional articles looking at
development using AppForge for the 9200 communicators. In this
article we will examine how MobileVB integrates with Visual Basic,
overview the development process and review the available support
material.
MobileVB is available for download from AppForge’s web site and can
be evaluated for 30 days. The download file is just under 20Mb and
should take about 2 hours to download on a 56K Modem. Installation
requires that Microsoft Visual Basic 6.0 is already loaded on your PC.
In addition to installing the development tool into Visual Basic the
process also allows you load Booster (again evaluation versions) into
the PC based emulators and devices for your chosen platform(s). You
can also load Boosters at any future time as the Booster Install Tool is
added to the AppForge menu in Windows.
Once installed MobileVB provides the following menu options:
The Hello World Tutorial provides a simple starting exercise for
anyone new to AppForge, although in the current version it only
covered development and deployment to Palm and Pocket PC devices,
however working out what to do to create a Nokia 9200 version is
relatively easy as we will see.
You need to load MobileVB from the start menu option provided, as
loading Visual Basic through the normal route does not load the
MobileVB extensions. However if you do start Visual Basic in the
standard way then when an AppForge project is opened the MobileVB
components are loaded.
To start a new application you select New and from the options select
“MobileVB Project”, you are then asked which device this development
will be deployed to.
For the Symbian developer the Nokia Series 80 is the item to select
(series 80 is the generic name Nokia have given to the 9200 series
communicator user interface). MobileVB then creates a project and
presents a blank form.
The application is then built in the same way as any Visual Basic
application except that AppForge Ingots are used rather than the
standard Visual Basic controls.
The AppForge ingots include all the screen components necessary to
implement applications on the Palm, Pocket PC and Series 80.
However, as we shall see, there are components specific to each
platform.
Having created the project before you can start adding control you
must save it.
The platform specific differences become apparent even in the simple
Hello World example. If you try to build the application identically to
the Palm and Pocket PC version you won’t get an application that
looks the same, or indeed works the same. This is because the
AFButton is not to the Nokia UI standard and the Nokia screen does
not automatically have a title. So to create a Nokia version of Hello
World we add the ListBox, then an AFCommandBtnAreaNS80
component, this is the Nokia Command button bar found to the right
of the communicator’s screen, which automatically fits to its correct
position when added to the form.
The properties of the Command Button control then need to be
modified to create the “Press Me” and “Close” buttons, I also chose to
make “Press Me” the default button so is can also be activated by
pressing . To complete the Command Button Area the
following code is added:
Private Sub AFCommandBtnAreaNS801_Click(ByVal WhichBtn As
IngotCommandBtnAreaNS80Ctl.AFCommandBtnAreaNS80ButtonConstants)
Select Case WhichBtn
Case afCommandBtnAreaNS80Button1
      HelloWorldListBox.AddItem "Hello World!"
Case afCommandBtnAreaNS80Button4
      Unload Me
End Select
End Sub
Finally the standard Nokia Window does not have a default title bar so
the AFTitleBarNS80 component is added to give the window a Title
Bar.
We now have an application that is ready to run. Initially this is done
within Visual Basic, it is here also that any debugging is undertaken.
Once the application has been debugged - which hopefully will not be
necessary for the simple Hello World example - it can be deployed to
the Emulator or Device.
All Symbian applications are assigned a unique identifier, the UID.
The UID is used by the Symbian OS to assign files to applications,
unlike Windows applications where the file extension is used to make
this association. UIDs for public applications can be obtained from
Symbian but the range 0x01000000 to 0x0ffffff is available to use
during development. The UID must be defined for your MobileVB
application before it is deployed to the emulator or a device. This is
done from the MobileVB Settings option on the MobileVB menu in
Visual Basic.
You can now deploy the application using the Deploy to Device option.
The MobileVB menu also has a Compile and Validate option which
you can use first to check whether there are any target specific issues
with your developed application, like a missing UID or inappropriate
ingots being used. The Deploy option performs a Compile and
Validate anyway before deploying. The Deploy option dialog asks for
confirmation of whether you want to deploy to a device or emulator.
Remember when deploying to Nokia 9200 (or any device) the PC to
device link must be active.
In this case I deployed to the 9200 emulator. When the deploy
process is complete the Emulator can be opened, to find the Hello
World application select the Extras option and scroll to the end of the
list where Hello World will have been added. Select it with the mouse,
or cursor keys, and press to start Hello World.
So you now have a running Visual Basic application in the Nokia
emulator.
While you can use MobileVB to deploy the application to your Nokia
9200 it is worth noting that MobileVB automatically creates a SIS file
(the Symbian installation file) as part of the Compile process. The file
is stored in the same folder as your project. So you have literally gone
form blank project to distributable application in only a few minutes.
To support your development activity MobileVB provides an on-line
help manual, which can be accessed either from the Start menu or
from the MobileVB menu within Visual Basic. Generally it is
comprehensive but some sections, particularly the newer ones, like
Telephony, are very briefly explained, while some commands don’t
appear to have been fully updated to include Nokia specific
information. However so far I have not found this to be a significant
issue as in the most part the commands are self-explanatory.
In addition to the PC based help there are several other facilities at the
AppForge web site. These include sample applications with full code,
FAQs, a Knowledge Base and a public developer’s forum that is
actively used. The forum is divided into General, Database,
Communications and Controls sections which makes it easy to
navigate when reviewing the postings. Finally you can also email
AppForge support staff directly with queries. The web site suggest
you will get a response within 2 days - but I have not had need to try
this service yet so I can not comment on how realistic this response
time is.
So we have taken a quick tour round MobileVB. If you are familiar
with Visual Basic you should have seen how straightforward it is to
transfer your skills to developing for the Nokia 9200 series (or indeed
Palm or Pocket PC).
Over the coming months we well be taking a more detailed look at
MobileVB. In the next article, which will be out in August, we will
take a closer look at MobileVB ingots and explore how to create a
Nokia Series 80 compliant interface.
AppForge MobileVB V3 is available from AppForge’s web site
(www.appforge.com). As
mentioned in the article it is available for 30-day evaluation. After
that it costs $899US to obtain a full single license, which again can be
done via AppForge’s web site. AppForge offer discounts for multiple
site licenses.
About the "WDN Symbian Guy" Richard Bloor:
Richard Bloor has 16 years experience in the IT industry. His earlier
work was largely in design and development of commercial and
manufacturing systems but more recently has focused on
development and test management of government systems.
Richard Bloor is the Mobile Applications champion at System
Architecture consultancy Equinox of Wellington, New Zealand.