Proceed to WirelessDevNet Home Page
Publications, e-books, and more! Community Tutorials Store Downloads, tools, & Freebies! IT Career Center News Home
newnav.gif

Newsletters
EMail Address:



   Content
  - Articles
  - Columns
  - Training
  - Library
  - Glossary
 
   Career Center
  - Career Center Home
  - View Jobs
  - Post A Job
  - Resumes/CVs
  - Resource Center
 
   Marketplace
  - Marketplace Home
  - Software Products
  - Wireless Market Data
  - Technical Books
 
   News
  - Daily News
  - Submit News
  - Events Calendar
  - Unsubscribe
  - Delivery Options
 
   Community
  - Discussion Boards
  - Mailing List
  - Mailing List Archives
 
   About Us
  - About WirelessDevNet
  - Wireless Source Disks
  - Partners
  - About MindSites Group
  - Advertising Information
 

The WDN Symbian DevZone... Richard Examines AppForge's MobileVB V3

by Richard Bloor, July 15, 2002

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.

Richard can be reached at rbloor@wirelessdevnet.com.

Symbian DevZone Home
Sponsors

Search

Eliminate irrelevant hits with our industry-specific search engine!









Wireless Developer Network - A MindSites Group Trade Community
Copyright© 2000-2010 MindSites Group / Privacy Policy
Send Comments to:
feedback@wirelessdevnet.com