Mobile map - Technology for Application Aymen A.Solyman Deutsche Gesellschaft Fuer Technische Zusammenarbeit(GTZ) admin@cairolocator.com Introduction Information technology is rapidly changing the use of Geographic Information Systems (GISs) from the classic desktop applications into the business service market. With the ubiquitous computing, the settings change dramatically and the classic GIS market will change drastically in the coming few years. Till mid 90’s, the architecture of GIS focused on a standalone (static) environment. This architecture has been changed to move GIS applications from workstations into mobile GIS applications. Mobile map applications is not a conventional GIS mdified to operate on mobile devices,but a system build using a fundamentally new paradigm(Maguire,2001). In this paper, we will discuss the inregration of XML (eXtensible Markup Language) and J2ME (Java 2 Micro Edition) to build a mobile map application running on 2.5G and 3G mobile devices such as Nokia series 60. The Characteristics of the Mobile Market It is important to look at the mobile market in isolation. It has specific needs that make it unlike markets for PCs or fixed domestic appliances. Five key characteristics that make it unique,according to Symbian OS perspective, these characteristics are:
In the past years,developers of GIS applications have to rely on the programming languages and tools that were supplied by the GIS vendors.Moving GIS to the mobile technology is a big challange, taking into consideration the special characteristics of the spatial data. Combination of XML and J2ME introduces a powerful tool for serving spatial data on mobile devices. Using XML-based data format provides an object-based data format in which each feature can be defined as an object or set of objects, independent from other features. Storing spatial data in XML formats reduces the storage size of the data and improves the performance of the application. Developing in J2ME provides flexibility to adapt many different platforms. Object-based data formats supply a spatially suited data format. Understanding Mobile Map Applications To understand the mobile map application , we need to understand what is an "Application". An end-user application consists of the following components(refer to figure 1):
![]() Figure (1):Typical end user mobile map applications The application can then be classified as distributed or local. Distributed applications typically involve both a client component and a server component of the application,whereas a local application resides on a single device. Application development is always constrained by the target platform's capabilities.This is especially true for the "ultralight" J2ME platform,because developers face many difficulties related to the platform's physical limitations.These difficulties include :
System Application Mode There are three mode of mobile map applications based on the connectivity.These categories are:
Overview of the Java 2 Micro Edition Platform J2ME is aimed squarely at consumer devices with limited resources(memory-display size and processing power). Many such devices have no option to download and install software beyond what was manufacturing process.With the introduction of J2ME, devices no longer need to be "static" in nature. Like its enterprise(J2EE),desktop(J2SE) and smart card (Java Card) counterparts,the J2ME platform is a set of standard Java APIs defined through the Java Community Process (JCP) program. The J2ME Architecture The J2ME architecture defines configurations, profiles and optional packages as elements for building complete Java runtime environments that meet the requirements for a broad range of devices. Configurations,are composed of a virtual machine (VM) and a minimal set of class libraries.They provide the base functionality for a particular range of devices that share similar characteristics,such as network connectivity and memory footprint.Currently there are two J2ME configurations:the Connected Limited Device Configuration (CLDC) and the Connected Device Configuration (CDC).CLDC is designed for devices with intermittent network connections,slow processors and limited memory-devices such as mobile phones, two way pagers and PDAs. Profiles,In order to provide a complete runtime environment targeted at specific device categories,configurations must be combined with a set of higher level APIs,or profiles ,that further define the application life cycle,the user interface,and access to device specific properties. The Mobile Information Device Profile (MIDP) offers the core application functionality required by mobile applications,including the user interface,network connectivity,local data storage, and application management.Combined with CLDC,MIDP provides a complete Java runtime environment that leverages the capabilities of handheld devices and minimizes both memory and power consumption. Optional Packages,The J2ME platform can be further extended by combining various optional packages with CLDC and their corresponding profiles.Created to address very specific requirements,optional packages offer standard APIs for using both existing and emerging technologies such as Bluetooth, web services,wireless messaging and database connectivity. In addition to J2ME's configurations,profiles and optional packages Figure (2) shows that applications may draw on vendor-specific interfaces when needed.These are not parts of standars J2ME,but extend or provide functionality that is specific to a given device.We can think of vendor-specific APIs as extensions to configurations and profiles. ![]() Figure (2): The organization of J2ME System Design and Implementation The most important elements of successful mobile map applications is the availability of quality data content and a user interface allowing easy, accurate and quick access to that content. User interface design is a significant challenge for any mobile software development due to the limited device resources. In the design phase we focused on creating an intuitive interface based on requirements and recommendations from previous ethnographic studies on mobile applications practices and was of using information resources. 1-Database structure The spatial and attribute data was stored in XML (eXtensible Markup Language) format. XML provides a common data exchange format, encapsulating both metadata and data. This allows different applications and database to exchange information and communicate without having to understand anything about each other. The initial task in the implementation phase was to convert the spatial data from ESRI shapefile to XML format. Each feature is stored as an object.Three types of objects have been defined:
2-Functions definations The main functions in the application can be summerized as follows:
The '*' key can be used to select a feature from the map (Figure 4-M10) for example select a hotel , and the '#' key is used to retrieve the information about the selected feature (Figure 4-M4)(this information can be text data , photo or both). The user can search for any service point or street by specifying name prefix (Figure 4-M5).The result is a list with such prefix. By selecting any of these services, it will be marked and flashed with red color on the map. ![]() Figure (3): The Keys functions in the application 3-User interface and menu hierarchy Java-enabled phone interface design is very different from the design used for PC or Internet applications. System functionalities are organized in a hierarchy of nested menu options. Figure (4) shows the cascading menu for IbnBatota application. When users select a menu option, it takes them to a submenu with another list of available options. Users continue to navigate down the menu system till they hit the menu hierarchy node, which usually instructs the system to perform a function (e.g., locate a point of interest on the map or retrieve data about selected feature). ![]() Figure (4):IbnBatota menu hierarchy Conclusions The increasing potential of mobile devices and the increasing requirements for location information go hand in hand. In this paper we discuss the process to build a mobile map application running on 2.5G and 3G mobile devices by integrating XML and J2ME. References
| ||
|
|