Mobile GPS
Your Mobile GPS Solutions

Windows Mobile Gps Adapter

windows mobile gps adapter

Windows Application Development Mobile

Mobile and compact cameras popular in our society. Each of us is faced with them all day. While each of us have a mobile phone, PDA or other high-tech devices.

All these devices have different platforms mobile. There are platforms such as Windows MobileMe known iPhone, BlackBerry, Symbian OS, Android, Maemo, OpenMoko etc all have stories different strengths and weaknesses.

Introduction

platforms like Windows Mobile, BlackBerry, iPhone is "closed" and limited to some extent by their own means (Blackberry, iPhone) or the complexity of development. Other problems mentioned above platform API is limited. Even Java platform mobile devices has some defects, such as large number of constraints very different API, the code depending on the device. Symbian and Windows Mobile platforms are better from this point the extent that support the broadest range of devices and give them more options of the API.

common problem is that there are a lot of platforms. Speaking of Open Source solutions and platform that we are still developing at this time and are not yet widespread.

In this article, we will pay attention to our Windows Mobile platform.

Microsoft has released its business platform for devices built in the late first 90. In 2002, the Windows CE.NET platform appeared. And at that time based on the Pocket PC platform, Windows CE 3.0 and higher have been released. developing wireless communication technologies has managed to combine phone and a personal computer. For example, Pocket PC 2002 Phone Edition appeared to support GSM, GPRS, Bluetooth and wireless network access SA. At the same time another device concept has developed much more similar to described above but was closer to the phone and personal computer. This device has been appointed as Smartphone 2002. Fundamental difference between the Smartphone and Pocket PC, Pocket PC is that while smartphone touchscreen buttons for control only. It had also extended to different applications and supported various standards and technologies.

The Windows Mobile platform for smartphones is on the other hand, communicators and small personal devices. Windows CE and Windows Embedded platforms are commonly used in various industrial equipment.

Now we have Windows Mobile 5 Windows Mobile 6 Windows Mobile 7 generations and will be available shortly. Modern devices based on Windows Mobile Pocket PC, if you have 500-600 64-128 MHz processors and MB RAM is not limited to these devices.

1. Development Tools

There are some models for developing applications for Windows Mobile:

  • Win32 API
  • MFC
  • . NET Compact Framework.

Microsoft offers developers all the tools necessary Co development of applications for PDA, Pocket PC and Smartphone.

Here are some tips on choosing a different type of code.

  • Using native code pop performance, working directly with the material, and also to minimize the need for system resources.
  • Using managed code for the GUI-oriented application development that the main objective is the development and deployment market conditions. Managed code is also good for easy work with web services.
  • Use server-side code to work with different devices through a single code base and communication channel also wide with a permanent device present.

These are the comments of these development tools for PDAs, Pocket PCs and Smartphones.

eMbedded Visual C + + 4.0

Microsoft eMbedded Visual C + + 4.0 development environment designed to create applications for devices running Windows CE. NET and OS 4.2 (with Service Pack 3 update package) PDA and smartphone Windows Mobile 2003 Second Edition. The development environment eMbedded Visual C + + 4.0 is good for creating native code for mobile devices integrated with Windows CE. NET 4.2 OS. Developer Enables Just-In-Time debugging for diagnosing unhandled exceptions, adhere to extend the process of purification procedures, as well as interaction with an emulator.

Visual Studio functions. NET and SDP

SDP (Smart Device Programming) the functions of the environment of Visual Studio. NET 2003 (2005, 2008) can create applications that use the possibilities of Microsoft. NET Compact Framework platform. Therefore, a developer can create mobile distributed data treatment systems, sites in the two scenarios and the connection without permanent connection. Extensive class library. NET Compact Framework allows application development platform much faster than with traditional development tools.

Visual Studio. NET to create applications for Pocket PC 2002 (with good SDK) Pocket PC 2003, 2005 and Smartphone 2003, 2005, using the same tools used to develop applications for desktop PCs. Library. NET Compact Framework installed with Visual Studio. NET. This library is designed specifically for devices with limited resources. Developers can also use new languages C # and Visual Basic. NET for Devices mobile and embedded. They're good at working with web services technology and ADO.NET.

The control elements of the ASP. NET Mobile Controls extend the functionality and SDP. NET Compact Framework platform. Provide an opportunity to use opportunities. NET Compact Framework and Visual Studio. NET for web application development for mobile delivery data to various mobile devices using ASP.NET technology. This approach allows you to create unique mobile web applications in Visual Studio. NET, which automatically data record for display on different devices: mobile phones, smartphones, PDAs, Pocket PC. The IDE makes it possible to create mobile applications website by simply dragging the control elements on the forms.

ASP.NET system is any element in a client computer. To adjust your browser settings specifically uses the server logic. Information is generated in the formats Wireless Markup Language (WML), HTML, Compact HTML (cHTML).

Microsoft SQL Server

Microsoft SQL Server Compact Edition (SQL Server CE) is a compact DBMS for rapid development of applications that extend the opportunities to work with company data due to the use of mobile devices. SQL Server CE is a tool to facilitate the development mobile applications with the help of SQL syntax and use of the application and the API model that is compatible with SQL Server.

SQL Server CE provides the basic set function relational database, specially optimized query manager, support and heterogeneous data types – Requirements for system resources without pretensions. Remote access and reproduction data by the junction to provide reliable delivery of information from SQL Server databases, ability to work independently information and later synchronization with the server. SQL Server CE is good for systems with mobile devices and wireless networks.

DBMS SQL Server CE has been developed for integration with. NET Compact Framework with Visual Studio. NET. It simplifies development of applications for working with databases on mobile devices and embedded applications. New Data Provider for SQL Server CE code management in the common language runtime environment allows to develop applications compliant with self-employment opportunities of the information in the permanent offline scenarios.

Microsoft. NET SqlClient API given for work of two. NET Framework y. NET Compact Framework. For Microsoft Windows Common SqlClient used with SQL Server, and Microsoft SQL Server Compact Edition SqlServerCe for Compact Framework.

Name SqlClient space is in both versions. Thus, we can interact:

  • Using. NET Compact Framework SqlClient access SQL Server from the device on the desktop.
  • Using. SqlServerCe NET Compact Framework to access SQL Server Compact Edition directly on a device.

Working with databases in a device is similar to working on the desktop. To access SQL Server Desktop SQL system uses TCP / IP in this case can not have SQL Server Compact Edition installed on a device.

All models were applied to desktop systems. Therefore, experience can make application development software for Windows Mobile. Using Win32 API to quickly get the compact code, and you can use for the development of drivers and system components. Using MFC Extensions have the functions of the API, as well as designer for development of the interface. And by using the Compact Framework, we have at our disposal an interface well developed, automatic garbage collection, XML support and other options. In addition, there is even a truncated version – Micro Framework, where there is less SDK functions.

After MS Visual Studio SDK to install new mounting configurations appear as well as new functions for the assembly on these platforms. Costume also contains Emularor software development and testing, no physical connection between the camera and computer.

As for many aircraft Windows Mobile is based on an ARM processor, it is also possible to compile using other compilers units: AVR32, ARM (RealView), GNUARM, IAR Systems.

2. Creation Windows Mobile application for Windows Mobile devices with Microsoft Visual Studio. NET

Visual Studio environment Compact Framework can develop applications with databases large graphical user interface, archiving and encryption tools, USB, serial, and Bluetooth wireless networking and telephony as well. All this provides SDK and libraries and archives of the position of Platform Builder.

2.1 UI

Due to the presence of good designer VS SDK and easily we can develop GUI applications for moves like desktop applications. The only difference is in the graphics chipsets for desktop and Windows Mobile. Also difference between the components of the Smartphone and Pocket PC versions caused by this Pocket PC has a touchscreen and no SmartPhone. Therefore, the development interface for the smartphone is more complex. Should be considered when developing software for both platforms.

Here, we must also indicate that software designed for Pocket PC does not start on the Smartphone platform while the opposite is possible – until such time that certain special called Smartphone.

It is natural that many widgets and most of the functions of frame size is taken from the SDK for Windows Mobile for reducing the size of the SDK on the side of the device. Only items of greatest need on the left. However, productivity and volumes are increasing memory for the number of functions included in the SDK becomes greater. So that the difference between the Compact Framework 1.0 and 2.0 is huge. Version 1.0 is very limited.

In general, the development of the GUI? COMPACT Marco? # Is it similar to the development of common Win32 application in C #.

It is also possible to develop a graphical user interface using the engine mount 3D rendering. They are like GAPI (Game API), OpenGL ES (Embedded System), OpenVG (vector graphics), and other projects. Certainly there is abundant labor because it is very important to write optimal code because of the relatively low productivity of mobile equipment.

2.2 Communications

Until now, mobile devices have a wide range of communication options. They have access to high-speed wireless network connection via WiFi 802.11. Also using IrDA, Bluetooth and USB host / client functionality. Although the use of IrDA is becoming less of protocols and standards of Bluetooth, WiFi, EDGE, GSM, and USB are used often leave.

Microsoft Corporation will provide APIs as:

  • ActiveSync API provides functionality for working with services synchronization, file filters, etc.
  • Bluetooth API that provides the functionality of wireless and mobile devices.
  • Connection Manager API to automate the process used to identify, manage network connections. The devices are using the connection manager to connect and to inform the alleged connection (eg internet).
  • Object Exchange (OBEX) API provides functionality to work effectively, any protocol for binary compact devices with limited possibilities.
  • API remote (RAPI) provides management functions and remote call methods on the side of the device. These functions are available: access to registration, files, databases and different configurations of the device from the desktop. The most important option is Remote Procedure Call us when a number enough to call the method "CeRapiInvoke ()" on the office side, send the name of the DLL on the device side and the name of the function in this file DLL and then call this method.
  • Object Model Pocket Outlook API provides functions for working with objects Pocket Outlook. Provides interfaces for synchronization and access to objects: Tasks, Calendar, Contacts.
  • Telephony API (TAPI) includes:
    • Aided API
    • Extended API
    • Phone API
    • SIM Manager API
    • Short message service (SMS) API
    • Telephony Service Provider (TSP) API
    • Wireless Application Protocol (WAP) API.

As mobile devices have the opportunity to work with serial (USB). Some COM ports for multiple devices. Usually, the first 3-5 of them are reserved for IrDA, Bluetooth, and other SerialPort. The other ports are available for the user. Some devices have features USB-Host to say that are USB On-The-Go (OTG) devices that can serve both USB host and USB client. To this end, the device must be necessary hardware and software (device drivers).

Device Driver is a driver that is a layer between the HOST driver and application level. The controller provides "current driver interface and contain features such as:

  • Xxx_init
  • XXX_Open
  • XXX_Close
  • XXX_Write
  • XXX_Read
  • XXX_IOControl

Here, "XXX" is replaced by "prefix (for example," COM " "DSK").

This registers the prefix in the registry for the registration pilot project in the system. More detailed information on device drivers interface can be obtained from MSDN.

So a developer can use the API in the communication:

  • Configuration API devices
  • File and Application Management API
  • Game API
  • Home Screen API
  • HTML Control API
  • MIDI API
  • Shell API
  • Speech Recognition API
  • Vibra API
  • Voice Recorder Control API.

2.3 P / Invoke and Interop Indian

As for Compact Framework includes basic functions and methods of complete

Marco, who have features like:

  • XML Serialization
  • Cryptography
  • Security
  • Reflection
  • Interoperability Services et al.

Without doubt, the Platform Invoke calls are accessible. To do this – and to complete part – We use the functions and attributes System.Runtime.InteropServices Namespace and DllImport attribute to the description of the functions to be called from unmanaged code.

However, the functionality of these methods are limited. Then quarterback PtrToStructure class, GetComInterfaceForObject, Copy () and read () functions but, for example, there is no role as GetDelegateForFunctionPointer () on it. It is therefore impossible to do with marshaling delegate. The function is available only GetFunctionPointerForDelegate. If we pass a function pointer from managed code and its transmission should only FunctionPointer after unmanaged code to call back from there. Therefore, certain objects can not pass because Compact Framework can not count sizeof () to some objects. That is why we often send data types and tables only these types Blitable (int, byte, char, bool, but no), and send and receive classes and structures by IntPtr. Certainly, it is explained by the desire to increase performance. Therefore recommends the use of the main types of marshaling and "GCHandle class to store objects in memory process and to make this memory "visible" to the unmanaged code

Certainly, the performance of P / Invoke calls from C # application in C + + DLL is almost two times less than the performance of method calls between C + + DLL. However, the performance of devices grows and makes possible the use of such calls.

2.4 cleansing

MS Visual Studio enables debugging of applications under

Windows Mobile still only for desktop applications. We have the emulator, the Device Emulator Manager and other features such as breakpoints, thread panel clocks etc

However, for debugging using native and managed code is both impossible. It is therefore possible to start, or C + + or directed projects. It is also to "Attach to Process." It is possible to attach to processes on the side of the device (or emulator side.) ActiveSync is necessary for communication between a device and the system is installed with the SDK. An emulator may also be connected to computer via ActiveSync. We received nearly emulation Full Windows Mobile devices. Two Smartphone and Pocket PC (or Pocket PC Phone Edition) emulators. However, a Windows Mobile device can be connected to the computer at the time same time. Therefore Debug on two devices simultaneously and interact in this manner is quite difficult. It is true that we speak only of the developed application debugging for us, but not in the applications and system services. For debugging example we need to complete the construction of the system established by the the Platform Builder (the latest versions of Platform Builder is included in Visual Studio). We can also create our own Visual Studio SDK for Windows CE platform.

Emulator can also emulate part of the GSM and GPS support. You can test and develop wide range of applications without a physical exam in their hands.

Speaking Debugging with IDA should be noted that the 5.1 version debugging has already possible through this interactive disassembler using your plug-in that is installed on a device.

With the optional aspect SDK as "distribution" appears in Visual Studio. Now, there is "Distribution" Context menu item of the project, in addition to "build", "Clean" cleansing. " After choosing this point of DLL or EXE built by the current configuration is transmitted to the device. So the new column appears in the configuration manager, which not only "Build" in some configuration options are available, but also "implement." NET implementation. It conveys not only unity but also generations that are dependent on (dependencies).

3. Implementation and installation

Developing Applications for Windows Mobile also requires assembly and creation installation package. To this end, it is this concept? Abinet (. CAB) in Windows Mobile. It is a common file, but it is an installation package (A kind of MSI package). Is mounted with the Wizard booth (cabwiz.exe) MS VisualStudio (or a command line). This utility creates a "treatment" in charge. Cab. CAB WinCEApplicationManager forward and start on a device, the user can install the application by following the instructions on the screen of the device. It is also possible to create the MSI project to install a CAB file that includes using Visual Studio. This package will be built up in user's computer, then send? AB Installation on a device to continue the installation process.

Uninstall Manager is special side the device. You must attach the INI configuration file-CAB. This INI file contains settings to manage the installation process as a journey, short name to create, minimal version of the operating system to install application and other documents in the special syntax. It is also possible to include their own DLL files in the CAB file to expand the installation options. This DLL contains functions such as "Installer_AfterInstall", "Installer_BeforeInstall", "Installer_AfterUnInstall" "Installer_BeforeUnInstall" code of these functions can be run on the side of the device at the time of installation or uninstallation.

In the development of CAB installer, you can attach files, the various resources, building units, add information in the registry. They are designated as "outcome the project. Therefore, no need to restart anything after creating CAB-file: it will collect all projects and included files and assemble in a file.

4. Security Model for Windows Mobile 5 and Windows Mobile 6

The Windows Mobile-based devices to receive, send and analyze the information potentially important to be protected from dangerous applications. To protect the device is disabled unknown applications, access to certain API is limited and some parts of the preparation of the record is prohibited. The units can be marked as approved and not approved and that the system uses this information to ensure that applications do not booting and limit unauthorized access to the system. Also access the system via RAPI (Remote API) through ActiveSync can be restricted. Security Certificates Rights of security units used for the executable file (EXE, DLL) files and CAB.

Protection against threats and risks

The following options to help protect the devices:

  • Strict password protection.
  • PIN protection.
  • Information devices corrupt removed to prevent access (WM 6).
  • Deleted information devices damaged memory cards to prevent access to (WM 6).
  • storage and encryption Advanced Encryption Standard for SSL (WM 6).
  • Certificates own use.
  • Detect Bluetooth device can be protected (WM Smartphone 6).
  • Two application layer system starting (monist and dualist access.)
  • No support for macros, so viruses can do much harm.

The first applications based on permissions. Windows Mobile devices using these models:

  • Privileged
  • Normal
  • Blocked

applications have privileged access to the largest. You can access any API, write to protected areas registration and full access to the system.

Most applications have the Normal template. They have access to trusted API and not have a full control system.

The application can be started at all if it has "locked" state. This means that it is signed with the corresponding certificate or the user has banned the correct departure warning system.

situation is analogous to the operator's cab files. executable units may begin the normal state DLL inside, but then go to work as usual. However privileged executable units units can not start a normal state.

Written by Kordin Eugene, Apriori specialist.

More information about the development process of Apriori here .

About the Author


Garmin GPS 20SM Nokia Large Power Adapter (Replacement)


Garmin GPS 20SM Nokia Large Power Adapter (Replacement)


$5.99


Lets you power your Nokia phone with large adapter on the Garmin GPS 20SM. Replaces the one included with your original Mobile 20 Package.

Ambicom GPS-USB - GPS USB adapter for Microsoft Windows Laptops


Ambicom GPS-USB – GPS USB adapter for Microsoft Windows Laptops


$44.24


This AmbiCom high performance GPS Navigation USB Receiver has proven SiRF Star III single chipset architecture incorporated within its small form factor. It offers the highest level of sensitivity (-159dBm) for faster signal acquiring and updating rate. It is the best in class accuracy with 20 channels satellite tracking ability. You can also use other forms of navigation software that is compatible with NMEA-0183 GPS standard in conjunction with AmbiCom’s Navigation USB Receiver. Aviation, nautical, outdoor camping and hiking software are just some examples of the varieties of software you can use with this gps receiver. Now you can turn your device into a true GPS navigation system and you are free to explore the world without worrying about getting lost!

Garmin Auto Adapter for GPS Receivers


Garmin Auto Adapter for GPS Receivers


$23.25


Garmin Auto Adapter for GPS Receivers

Garmin Cigarette Lighter Adapter for GPS


Garmin Cigarette Lighter Adapter for GPS


$16.28


Garmin Cigarette Lighter Adapter for GPS
Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay

Tags: , , , ,

Leave a Comment