At ArcTouch, we love working with Xamarin. And we crave learning about the latest and greatest technology so that we can apply and continue to build apps our clients and users love. The recent Xamarin Developer Summit, held July 11-12 in The Woodlands, Texas, was packed with announcements from Microsoft Xamarin about its cross-platform development tools. And the conference was attended by some of the most influential Xamarin community members from all around the world. Among the speakers, our own Alexandre Costa took the stage to share his expertise on using Xamarin.Forms to create accessible applications.
There was a lot of exciting stuff for our team of Xamarin developers to digest. Here are the six most important takeaways that businesses need to know from the event:
1. iOS 13 and Android Q support are coming soon
Of course, it’s summertime in the U.S. For developers, that means something more than just enjoying the sun and sipping margaritas at the beach. It’s also “beta summer” — meaning, it’s time for app developers to get their apps ready to support the next versions of Android and iOS.
Speaking of iOS, the Xamarin team recently rolled out a preview of Xamarin.iOS that supports the Xcode 11 beta and iOS 13 beta. As early adopters, my team already has some engineers digging into the new features in iOS 13 (including Sign In with Apple) and testing client apps on Apple’s upcoming mobile operating system.
With regards to Android Q, the Xamarin team is working on supporting it. Microsoft announced that developers can now test the first preview with the Visual Studio 16.3 release (Visual Studio for Mac 8.3), currently available in the Preview channels.
2. Xamarin.Essentials library offers cross-platform APIs
Intending to make the cross-platform development cycle easier and faster, Microsoft recently released Xamarin.Essentials, a cross-platform API that works with any app built for Xamarin.Forms, Android, iOS, and UWP. During the event, Microsoft also announced official support for watchOS and tvOS, currently available in beta. The library will also support the Tizen Platform, created by the Samsung developer team, which enables Xamarin.Forms applications to run on Tizen devices, including wearables, Smart TVs, smart appliances, connected cars and more.
These announcements reaffirm Microsoft’s commitment to support developers working on emerging platforms with its cross-platform tools — enabling developers to spend less time on platform-specific implementations and focusing more on delivering value across the Internet of Things (IoT).
3. Xamarin is improving build time and app startup
When it comes down to the development cycle of an app, developers waste a lot of time waiting as builds are compiled and deployed. For app users, meanwhile, there’s nothing more irritating than waiting for sluggish apps to load. Fortunately, the Microsoft team has made big improvements in both areas.
Faster app deploy times
Deploying a full-featured app to a device can take a considerable amount of time. If you take into account how frequently a deployment step runs, a fraction of a second improvement can add up to a huge time savings over the course of a project.
Xamarin team members shared some numbers with the audience showing they’re on the right path:
- A 22% improvement (approximately 14 seconds) on the first build;
- a 30% improvement (3 seconds) on incremental builds;
- and 51% improvement (5 seconds) when deploying an app after a UI change.
Microsoft also announced the long-awaited XAML Hot Reload, which will greatly reduce the time it takes to make UI changes (more on that below).
Faster startup times for Android
The startup time of an app is directly related to user experience (UX). If an app lags or stalls on startup, users won’t think twice about giving an app a bad rating — or worse, they’ll uninstall it due to frustration.
Microsoft announced Startup Tracing for Android. This new mode can be activated in the Android Build properties for the Xamarin.Android app. When active, as the app compiles, the build tools will use a small optimized profile that provides everything the app needs to start and then reduces the app startup time.
During the Xamarin Developer Summit keynote, James Montemagno shared that Android apps using Startup Tracing could experience up to a 60% percent improvement in startup time. One sample app built using the default mode (JIT) took 2.914 seconds to start up. With Startup Tracing on, the startup time decreased to 1.518 seconds.
As Startup Tracing matures, we expect it to become the default setting because of the obvious benefit for developers and users.
4. CarouselView is coming to Xamarin.Forms
For mobile apps, gesture-based interactions such as scroll and swipe are natural to the user. One way of enabling these kinds of interactions is to design a card-like format such as a carousel control. At ArcTouch, our UX designers often use carousel controls due to their simplicity and ease of use.
Unfortunately, building a carousel control from the ground up is not trivial. Because of the heavy lifting involved, developers often resort to implementing libraries created by the community.
In Xamarin.Forms, it just got easier with the delivery of the new CollectionView and CarouselView controls. The CollectionView control removes the limitations of the ListView and enables other controls to extend or use it, including the new CarouselView.
Our Xamarin team at ArcTouch is ecstatic about the upcoming release of these new controls. Especially for the CarouselView — because the feature suggestion was part of some feedback we gave to the Xamarin team during a meeting we had with them in March.
It was a bonus when Microsoft’s Dave Ortinau mentioned our feedback during his June 11 keynote and announced that CarouselView is nearing its stable release.
5. Visual Studio is more robust than ever
Visual Studio may just be the best integrated-development environment (IDE). The Windows version has been evolving since 1997 — a whopping 22 years. The latest edition, Visual Studio 2019, has tons of new features to help developers focus more on what they’re building — and less on the development process itself.
Here are some of the key Visual Studio upgrades:
The Visual Studio 2019 install size has been reduced from 23 GB to 7 GB. With that, the installation time is greatly reduced as well. The team has also worked to reduce the installation failures that were common, especially when installing the Android SDK for the first time.
Optimized code editor
Historically, Visual Studio for Mac has lacked a great editing experience for XAML files. In the current stable version (8.2), the experience should be different. The Mac version is now getting features already available on Windows. The IntelliSense understands BindingContexts, Resources and support emojis — and provides “light bulb” suggestions.
On Windows, developers can use IntelliCode, an extension to Visual Studio that uses artificial intelligence and machine learning to better assist developers by recommending the best piece of code that fits their context. The Xamarin team announced that IntelliCode now also supports the Xamarin.Forms XAML.
Android XML editor and designer
The Android XML editor has received great improvements such as smarter IntelliSense and better autocomplete for Android resource files.
The .axml extension will be deprecated, making it easier to edit layout files on other editors like Android Studio or Visual Studio Code.
The iOS Designer built into Visual Studio also received improvements. Now it offers support for custom controls, named colors, color spaces/precision, improved dark theme appearance, and PDF support in Assets.
The remote simulator also opens 3x faster! If you’re on Windows and paired to a Mac to develop your iOS apps, then you’ll definitely want to check this out.
Android SDK Manager
The integrated Android SDK Manager is now smart enough to detect whether you have (or don’t have) a specific Android SDK version — and download it for you if you don’t have it already.
The Xamarin team is also working on an Android SDK repair tool to fix broken installations. The tool includes a feature to “cold boot” the emulator so that developers don’t need to reset the emulator every time it misbehaves or breaks.
6. XAML Hot Reload enables updates without a new build
The announcement of the XAML Hot Reload might just be my favorite bit of news from the event. The Xamarin team is super-committed to shortening what they call the “inner development loop.” By that, they mean to reduce the amount of time between when you make a code change and when you can actually see your change on a device, emulator, or simulator.
A “hot reload” refers to injecting code changes to an already running app — without requiring the developer to create a new build. It’s a massive time-saver, and will allow a lot more fine-tuning of the user interface.
Technologies like React Native, Flutter and SwiftUI have embraced hot reloading. And although there are some open-source solutions for Xamarin created by the community, we were missing an official tool — and one integrated with our preferred IDE, Visual Studio. Well, the latter will no longer be true because XAML Hot Reload is coming!
As lovers of the Xamarin platform, we’re eager to try the public preview (once released) because we’re sure it will drastically decrease our development time.
Looking for Xamarin help?
ArcTouch’s experienced team of Xamarin developers and Microsoft MVPs have helped a range of companies (including Hawaiian Airlines, GUESS, Skyjet, and more) build award-winning cross-platform apps with Xamarin. Contact us to learn more about how we can help your business build Xamarin apps that your users will love.
DEVELOPER EVENTS, MICROSOFT MVP, PROGRAMMING, XAMARIN
OBERDAN FERREIRA — Oberdan Ferreira (@OBERDANFERREIRA) is a chapter lead for the Xamarin team at ArcTouch. In addition to coding, he also enjoys drinking a good IPA beer while listening to heavy metal music.