Toyota migrates mobile app to Uno Platform

A car giant's strategic shift in mobile application development

Companies often face the daunting task of adapting their digital infrastructure to stay ahead. Toyota, a titan in the automotive industry, found itself at such a crossroads when the end-of-life announcement for Xamarin Forms prompted it to reevaluate its mobile application development strategy.

This article explores Toyota’s transition from Xamarin Forms to Uno Platform, highlighting how it navigated the challenges of migrating complex applications and achieved successful deployments, all while adhering to the stringent standards set by Toyota.

The Problem: Migration considerations and pain points

The journey at Toyota has been both innovative and challenging. Toyota’s adoption of Xamarin Forms marked a significant shift, aiming to streamline the development process across multiple platforms. This transition started with a vehicle data collection application, followed by a notable project focused on quality inspection traceability. Pivotal to Toyota’s operations, these applications were deployed extensively across North America, including two facilities in Mexico, eight in the United States, and a couple more in Canada.

Despite these advancements, the journey had its challenges. The deployment of LOB (line-of-business) applications, especially on the Universal Windows Platform (UWP), presented significant obstacles. One of the most persistent challenges encountered was the subpar performance on Android devices. Despite considerable efforts dedicated to optimizing Android applications, the desired level of satisfaction remained elusive. Similarly, iOS applications faced their own reliability issues, particularly with Observable Collections and List Views not functioning optimally. The discontinuation of the Microsoft Store for Business further exacerbated these challenges, complicating the deployment process and hindering the seamless distribution of applications.

The journey Toyota embarked on to migrate from Xamarin Forms to Uno Platform unveils the complexities and strategic considerations of transitioning to a new technology framework within a corporate giant. The process, governed by Toyota’s stringent Enterprise standards, required any new platform to be rigorously vetted and officially approved, ensuring that it met a comprehensive list of criteria reflective of enterprise needs and specific technical demands.

These common pain points underscored the need for a more robust and efficient solution to mobile application development within Toyota, leading to the exploration of new platforms and technologies.

The solution

The moment Xamarin Forms’ end-of-life (EOL) announcement came into the picture; it sparked a pivotal shift within Toyota’s approach to mobile application development. Recognizing this as a critical juncture, the decision was made to explore new horizons, with Uno Platform emerging as a strong contender due to its mature ecosystem and broad capabilities. Toyota, known for its rigorous and disciplined technology evaluation processes, doesn’t make such transitions lightly. An enterprise board within Toyota oversees such significant technological shifts, ensuring that any change aligns with the company’s stringent standards and long-term strategic goals.

The application chosen to spearhead this transition was a sophisticated quality inspection and traceability tool previously developed using Xamarin Forms. This tool was integral to Toyota’s operations, utilizing the Azure Mobile SDK, which is custom-tailored to Toyota’s unique cloud infrastructure requirements through a bespoke fork. The application boasted advanced features, such as custom form design for pop-ups and virtual keyboard management, HTML text formatting within Xamarin Form labels, and gesture recognition for long presses. Barcode scanning, a critical function for quality inspection, was facilitated by integrating Zebra’s Xamarin SDK for handheld devices and Honeywell’s Captuvo SDK for iOS sleds, alongside the Zxing.Net Mobile library for camera-based scanning.

This application’s complexity and centrality to Toyota’s operational workflow was the first candidate for testing the transition to Uno Platform. The goal was not merely to replicate the existing functionality but to enhance performance, streamline deployment, and address the pain points previously encountered with Xamarin Forms, particularly regarding Android performance and iOS reliability. This move was seen as a strategic step forward, leveraging the end-of-life announcement as an opportunity to modernize Toyota’s mobile application stack and align it with the future of digital innovation in the automotive industry.

The migration process revealed that Uno Platform’s comprehensive SDK surface and architecture minimized the need for certain workarounds that were previously necessary, such as Forms9patch and FormsGestures, for complex gesture handling. This transition was also an opportunity to test the waters with Uno Platform by forking the Zxing.Net Mobile library for barcode scanning, adapting it to Uno Platform, and upgrading to .NET 6, the most current version of .NET at that time, which proved to be smoother than anticipated. This decision was influenced by challenges with the outdated Azure Mobile SDK. As a result, Microsoft’s Data Sync was adopted as the new standard for .NET versions.

Surprisingly, the most significant effort was not in UI transformation, which was relatively straightforward and enjoyable due to using C# markup and creating a custom flavor that resonated well with the team. Instead, the major challenges lay in migrating to the Microsoft Datasync client, necessitated by the different SDK surface, which required substantial revisions to the view models and optimizations to improve data sync performance.

Embracing Uno Platform for Future-Proof Efficiency and Reliability

For Toyota, the transition was far more than a mere shift to a new framework; it was a strategic move aimed at addressing existing challenges while ensuring long-term dependability and efficiency. With its robust features and proven reliability, Uno Platform quickly became the preferred choice for this pivotal transition.

What set this journey apart was the exceptional support from the Uno Platform team and community, whose responsiveness and expertise demonstrated the platform’s maturity and were instrumental in overcoming specific hurdles, such as issues related to third-party library migrations and UWP deployment.

Xamarin.Forms Migration Docs
With the announced end-of-support date for Xamarin.Forms, Uno Platform, is a natural choice for teams looking to modernize their existing investment. This series of articles will outline how to migrate key aspects of the app to unlock the benefits of Uno Platform.

Next Steps

If your business is navigating the complexities of migrating from Xamarin Forms, let’s connect. Our team is here to guide you through a seamless transition to a platform that aligns with your long-term goals for dependability and efficiency.

Tags:

Related Posts

Uno Platform 5.2 – True Single Project, enhanced Skia renderers, Multi Window and .NET 9 support , and more! See what’s new