ScholarQuill logoScholarQuillUniversity Notes
  • Notes
  • Past Papers
  • Blogs
  • Todo
Login
ScholarQuill logoScholarQuillUniversity Notes
Login
NotesPast PapersBlogsTodo
More
SubjectsDiscussionCGPA CalculatorGPA CalculatorStudent PortalCourse Outline
About
About usPrivacy PolicyReportContact
Notes
Past Papers
Blogs
Todo
Analytics
    Current Subject
    🧩
    Mobile Application Development 1
    COMP4124
    Progress0 / 33 topics
    Topics
    1. Mobiles Application Development Platform2. HTML5 for Mobiles3. Android OS: Architecture, Framework and Application Development4. iOS: Architecture, Framework5. Application Development with Windows Mobile6. Eclipse7. Fragments8. Calling Built-in Applications using Intents9. Displaying Notifications10. Components of a Screen11. Adapting to Display Orientation12. Managing Changes to Screen Orientation13. Utilizing the Action Bar14. Creating the User Interface15. Listening for UI Notifications16. Views17. User Preferences18. Persisting & Sharing Data19. Sending SMS Messages20. Getting Feedback21. Sending E-mail22. Displaying Maps23. Consuming Web Services Using HTTP24. Web Services: Accessing and Creating25. Threading26. Publishing Android Applications27. Deployment on App Stores28. Mobile Programming Languages29. Challenges with Mobility and Wireless Communication30. Location-aware Applications31. Performance/Power Tradeoffs32. Mobile Platform Constraints33. Emerging Technologies
    COMP4124›Application Development with Windows Mobile
    Mobile Application Development 1Topic 5 of 33

    Application Development with Windows Mobile

    8 minread
    1,351words
    Intermediatelevel

    Application Development with Windows Mobile

    Windows Mobile, developed by Microsoft, was an operating system designed for mobile devices like smartphones and PDAs (Personal Digital Assistants). Though it has been replaced by Windows Phone and, more recently, Windows 10 Mobile, its application development principles were foundational for the later evolution of mobile development on Microsoft platforms. While development for Windows Mobile is no longer actively supported, understanding its application development ecosystem provides valuable insight into how mobile platforms have evolved.

    In this explanation, we’ll cover the key aspects of Windows Mobile Application Development—including tools, programming languages, architecture, and the basic process involved.


    1. Overview of Windows Mobile Operating System

    Windows Mobile was an early mobile operating system, based on Microsoft’s desktop Windows operating system. It was primarily aimed at business and enterprise users, providing mobile access to email, calendars, and contact information.

    Windows Mobile supported a variety of mobile devices like smartphones, PDAs, and rugged devices. Its interface was more functional than aesthetic, with a focus on productivity.

    2. Key Development Platforms for Windows Mobile

    A. Windows Mobile 5.0 to 6.5 (Classic Versions)

    The most widely used versions of Windows Mobile for application development were Windows Mobile 5.0 through 6.5. These versions supported both Pocket PC and Smartphone devices.

    • Pocket PC: These devices had a touchscreen and were primarily used for tasks like email, web browsing, and media.
    • Smartphone: These devices had smaller screens and physical keyboards or keypads, with fewer features compared to Pocket PCs.

    B. Tools for Development

    Windows Mobile applications were developed using the following tools:

    • Visual Studio: The primary IDE (Integrated Development Environment) used for building Windows Mobile applications. Developers used Visual Studio in combination with the Windows Mobile SDK (Software Development Kit) to create apps.
    • .NET Compact Framework: A subset of the .NET Framework, the .NET Compact Framework was used to develop applications for Windows Mobile. It allowed developers to write mobile apps using languages like C# and Visual Basic.
    • C++/MFC: For performance-critical applications, developers could also write code in C++ using MFC (Microsoft Foundation Classes), which provided an object-oriented approach to developing applications for Windows Mobile.
    • Windows Mobile SDK: The Software Development Kit provided all the necessary libraries, APIs, and tools to develop applications on the Windows Mobile platform.

    3. Programming Languages for Windows Mobile Development

    The primary programming languages for Windows Mobile application development were:

    A. C# and .NET Compact Framework

    • C# was the preferred language for developing mobile applications due to its simplicity, ease of use, and tight integration with the .NET Compact Framework. The .NET Compact Framework was specifically designed to enable developers to create mobile applications with the same ease as desktop applications.
    • The development environment in Visual Studio provided powerful debugging, UI design, and code management features for C# developers.

    B. C++

    • For high-performance apps or when low-level device access was required, developers could use C++ and MFC.
    • C++ provided better control over memory management and system resources, making it ideal for developing apps like games or multimedia applications that required faster processing.

    4. Architecture of Windows Mobile Apps

    The architecture of Windows Mobile applications was influenced by desktop Windows, but it had specific optimizations for mobile devices. The architecture typically included the following layers:

    A. Hardware Layer

    • This is the foundation that interacts directly with the hardware (CPU, memory, sensors, touchscreen, etc.).
    • Windows Mobile supported a wide variety of hardware configurations and devices.

    B. Operating System Layer

    • The Windows Mobile OS was responsible for managing resources and providing core system services such as memory management, power management, networking, and device access.

    C. Application Framework Layer

    • This layer provided the core set of APIs and libraries required for application development. This included libraries for user interface elements, data management, multimedia, and networking.
    • Windows CE: The kernel of Windows Mobile, based on Windows CE (Compact Edition), provided the low-level architecture for mobile devices. It was optimized for small form factors and limited hardware resources.

    D. Application Layer

    • Applications were built on top of the application framework. The architecture of these applications was typically event-driven and user-interface focused.
    • Windows Mobile applications interacted with system resources and the user interface through the Windows Mobile APIs or .NET Compact Framework.

    5. Types of Applications for Windows Mobile

    A. Native Applications

    • Native applications were the most common type of apps, written specifically for the Windows Mobile operating system. These applications could be developed using C#, C++, or other supported languages and accessed directly by the mobile device hardware.
    • Examples include:
      • Email and calendar apps (like Microsoft Outlook)
      • Task management and contact apps
      • Multimedia apps, such as media players or camera apps

    B. Web-Based Applications

    • Windows Mobile also supported web-based apps that were essentially mobile websites optimized for the small screen. Developers could use HTML, CSS, and JavaScript to create these apps.
    • These applications did not require installation on the device and could be accessed directly via the browser, although they were less common than native applications.

    C. Enterprise and Business Apps

    • Windows Mobile was commonly used in business environments, so many applications were developed to support tasks like inventory management, field services, and customer relationship management (CRM).
    • Barcode scanners, GPS tracking, and data synchronization were popular features for enterprise apps.

    6. Key Features of Windows Mobile App Development

    A. User Interface (UI) Design

    • Windows Mobile had a distinct UI with components like menus, toolbars, and soft keys (virtual buttons that provided additional functionality on the screen).
    • Forms were used to build screens, and developers could design the layout using Windows Forms or XAML (in the case of managed code like C#).
    • Gestures: Unlike modern touch-based platforms, earlier versions of Windows Mobile supported a range of basic gestures but lacked advanced touch interactions like swipe and pinch-to-zoom.

    B. Device Features Integration

    • Windows Mobile apps could interact with device features such as GPS, camera, sensors, Bluetooth, and cellular capabilities.
    • Developers used APIs to interact with the phone’s hardware, enabling features like location tracking, multimedia capture, or Bluetooth communication.

    C. Networking

    • Windows Mobile supported Wi-Fi, cellular data, and Bluetooth connectivity, and developers could use standard TCP/IP, HTTP, and Bluetooth APIs to build applications that could interact with web services, exchange data, and sync with remote servers.

    D. Synchronization with Desktop and Enterprise Systems

    • A key feature of Windows Mobile was its ability to synchronize data with desktop and enterprise systems, especially Microsoft Exchange.
    • Applications could sync contact data, calendar events, and emails from a Microsoft Exchange server using ActiveSync.

    7. Application Deployment and Distribution

    A. Installing and Deploying Apps

    • Windows Mobile applications were typically distributed as CAB (Cabinet) files, which were self-extracting packages that contained the app files.
    • Developers could deploy apps to devices directly or distribute them via Windows Mobile Marketplace or other third-party app stores.

    B. Enterprise Deployment

    • Many organizations deployed custom apps to employees using mobile device management (MDM) solutions or Windows Mobile Device Center, which helped with app installation and configuration.

    8. End of Life and Transition to Windows Phone

    With the release of Windows Phone 7, Microsoft introduced a completely new platform that was incompatible with Windows Mobile. This transition to Windows Phone marked the end of active development for Windows Mobile applications.

    Windows Phone brought a new development environment based on the Silverlight and XNA frameworks, and later, Windows 10 Mobile continued that evolution. However, with the cessation of support for Windows 10 Mobile, developers have moved away from this platform, focusing instead on Android and iOS.


    Conclusion

    Windows Mobile application development was an important part of the early evolution of mobile apps, particularly in business and enterprise environments. The development environment was largely built around Visual Studio, the .NET Compact Framework, and a range of device-specific APIs. While no longer in use today, the concepts and tools used for Windows Mobile apps laid the groundwork for mobile development on Microsoft platforms and continue to influence the development of modern mobile operating systems like Windows 10 Mobile and Windows Universal Platform (UWP).

    Previous topic 4
    iOS: Architecture, Framework
    Next topic 6
    Eclipse

    Past Papers

    Open this section to load past papers

    Click on Show Past Papers to see past papers.
    On This Page
      Reading Stats
      Est. reading time8 min
      Word count1,351
      Code examples0
      DifficultyIntermediate