Gone Mobile Podcast
Gone Mobile Podcast
Greg Shackles, Jonathan Dick
Gone Mobile is a podcast discussing the latest in mobile development, with a healthy bias towards Xamarin technologies. The podcast covers in-depth topics with guests ranging from Android, iOS & Windows development to mobile marketing and design, as well as other mobile or not so mobile related technologies.
95: Xamarin.Forms to MAUI
In this episode, Jon and Allan discuss the migration experiences from Xamarin.Forms to .NET MAUI. They highlight the opportunity for architectural improvements during the migration process, such as cleaning up code and removing static untestable components. They also explain the evolution of Xamarin.Forms into .NET MAUI and the introduction of handlers. The benefits of the single project structure and the ease of migrating third-party libraries are discussed. The conversation also covers the customization of entry handlers and the migration of resources, including images and fonts. This conversation covers various challenges and solutions related to image management, including the use of vectors, app icons, and splash screens. It also discusses the migration process from Xamarin.Forms to .NET MAUI, highlighting the importance of a methodical approach. The conversation concludes with a recommendation for the Maui Community Toolkit as a valuable resource for developers. Takeaways Migrating from Xamarin.Forms to .NET MAUI provides an opportunity to improve the architecture of the app. The introduction of handlers in .NET MAUI allows for cleaner and more testable code. The single project structure in .NET MAUI simplifies the development process and improves compile times. Migrating third-party libraries may require finding alternatives or porting them to .NET MAUI. Customizing entry handlers and migrating resources, such as images and fonts, can be done more easily in .NET MAUI. Image management in mobile app development can be challenging, especially when dealing with different resolutions and densities. Using vectors can simplify image management by allowing for easy scaling to different sizes. App icons and splash screens can be generated automatically in .NET MAUI, reducing the manual effort required. When migrating from Xamarin.Forms to .NET MAUI, it is important to approach the process methodically, starting with dependencies and gradually bringing over pages and components. People Hosts: Jon Dick, Allan Ritchie Chapters 00:00 Introduction and Migration Experiences 01:11 Opportunity for Architectural Improvements 03:16 Evolution of Xamarin.Forms to Maui 06:27 Architecture of Maui Handlers 09:30 Benefits of Single Project Structure 13:56 Migration of Third-Party Libraries 18:13 Handling Dependency Service and Renderers 25:09 Porting Plugins and Controls 32:48 Customizing Entry Handlers 35:45 Migration of Resources 37:23 Image Management Challenges 39:25 Building a Solution: Resize-itizer 41:03 Vector Images in Maui 44:05 App Icons and Splash Screens 46:38 Migrating Resources to Maui 49:35 Font Handling in Maui 51:37 Replacing Frames with Borders 53:10 Avoiding Tap Gesture Issues with Stack Layouts 55:12 Namespace Changes in XAML 56:45 Methodical Migration Process 59:28 Package of the Week: Maui Community Toolkit
Feb 23, 2024
1 hr 1 min
93: These aren't your grandma's Templates
In this episode, Jon and Allan discuss the importance of templates for mobile app development. They explore the challenges of remembering details like Android manifest and info.plist, and how templates can help simplify the process. They also discuss the default templates in Maui and the benefits of item templates in VS Code. The conversation covers the balance between complexity and simplicity in templates, and the value of custom templates for saving time. They also touch on managing permissions and entitlements, and the power of MSBuild and CSProj files in customizing projects. The episode concludes with a discussion on the benefits of community templates. In this episode, Jon and Allan discuss different types of templates available for building mobile apps with .NET Maui. They cover item templates, Maui templates, solution templates, Visual Studio templates, VS Code templates, and command line templates. They also talk about the benefits of creating custom templates and how they can help standardize development practices within an organization. Takeaways Templates are essential for simplifying mobile app development and helping developers remember important details. Default templates in Maui and item templates in VS Code provide a starting point for building mobile apps. Custom templates can save time and help manage permissions and entitlements. MSBuild and CSProj files offer powerful customization options for projects. Community templates provide additional resources and options for developers. There are various types of templates available for building mobile apps with .NET Maui, including item templates, Maui templates, solution templates, Visual Studio templates, - VS Code templates, and command line templates. Item templates are used to add specific elements, such as XAML pages or views, to an existing project. Maui templates provide a starting point for building cross-platform apps with .NET Maui and include pre-configured project structures and dependencies. Solution templates allow developers to generate a complete solution with multiple projects and project references. Visual Studio templates offer a rich mechanism for creating templates with dynamic interfaces and advanced features. VS Code templates focus on command line interactions and provide a more lightweight and streamlined experience. Command line templates are used with the 'dotnet new' command and offer a simple and flexible way to generate project structures. Creating custom templates can help standardize development practices within an organization and simplify the onboarding process for new projects. Using templates can save time and effort by automating repetitive tasks and providing a consistent starting point for app development. Consider using existing templates or creating your own templates to improve productivity and maintain coding best practices. People Hosts: Jon Dick, Allan Ritchie Audio Engineer: Jim Heath Chapters 00:00 Introduction 00:31 The Importance of Templates for Mobile Apps 01:38 Default Templates in Maui 02:35 Item Templates in VS Code 03:28 The Challenge of Remembering Details 04:11 Customizing Templates 05:38 Balancing Complexity and Simplicity in Templates 06:55 Different Needs for New and Experienced Users 07:45 Creating Custom Templates 08:23 Managing Permissions and Entitlements 09:44 The Power of Templates in Saving Time 11:05 The Challenge of Changing Requirements 13:21 Managing Permissions in Templates 14:42 Working with Templates in Different Environments 15:23 Using Conditional Logic in Templates 17:42 Generating Entitlements in Templates 19:14 Simplifying Project Files 21:17 The Power of MSBuild and CSProj Files 23:01 Overcoming Fear of Project Files 25:21 Using Project Files for Customization 26:41 The Benefits of Plugin Templates 30:51 Including Popular Packages in Templates 32:33 The Value of Community Templates 33:32 Introduction to Templates 34:05 Different Template Options 35:39 Item Templates 36:09 Maui Templates 37:46 Solution Templates 38:15 Visual Studio Templates 39:21 VS Code Templates 41:45 Command Line Templates 43:08 Creating Custom Templates 45:16 Standardizing Templates 45:58 Conclusion Links:dotnet-maui-templates (egvijayanand) Shiny Templates Plugin.Maui.Feature MauiAppAccelerator
Feb 9, 2024
48 min
89: Bound for greater Bindings
This conversation discusses the concept of bindings in a mobile.NET, Maui world. Bindings are used to integrate native libraries into the.NET ecosystem. The conversation covers the challenges and complexities of creating bindings for Android and iOS platforms. It explores the differences between Android X libraries and platform APIs. The concept of slim bindings is introduced, which involves creating a simplified interface for interacting with native libraries. The conversation also touches on the use of platform channels for message passing between.NET and native code. The future of bindings and the need for improved tools and processes are discussed. The conversation discusses the challenges and considerations when integrating platform channels in Xamarin projects. It explores the difficulties of referencing native frameworks and dependencies in Xcode projects and suggests the need for improved tooling to simplify the process. The conversation also delves into the complexities of handling AndroidX dependencies and the potential issues with duplicate libraries. Additionally, it highlights the concept of platform channels in Maui and the potential for creating a seamless integration experience. The recommended plugin for this episode is Xamarin Binding Helpers. Plugins, Packages, and Products This week we're talking about Xamarin.Binding.Helpers which helps make it easier to create slim bindings on Android, as well as Platform Channels which is an experiment for creating a message passing interface between native code and .NET MAUI apps. People Hosts: Jon Dick, Allan Ritchie Audio Engineer: Jim Heath Chapters 00:00 Introduction 01:09 Understanding Bindings in a Mobile.NET, Maui World 02:00 Projections of Native APIs into the Managed.NET World 03:41 The Evolution of Bindings 04:06 The Challenge of Android X Libraries 05:00 Dealing with Bindings in Xamarin 06:07 The Complexity of Android Libraries 07:03 Creating Android Bindings 07:30 The Process of Android Binding 08:16 Challenges with Java and Kotlin Libraries 09:08 Handling Complex Inheritance in Java and Kotlin Libraries 10:22 The Sprawl of Android X Libraries 11:31 The Challenges of Binding Android X Libraries 12:09 The Simplicity of Binding Platform APIs 13:16 The Differences Between iOS and Android Bindings 14:22 Creating iOS Bindings 15:48 The Challenges of Objective-C and Swift Libraries 18:36 The Need for Slim Bindings 20:00 The Challenge of Dependency Chains 21:54 The Concept of Slim Bindings 23:46 The Advantages of Slim Bindings 27:11 Determining When to Bind the Whole Library 29:34 Debugging Slim Bindings 34:52 The Concept of Platform Channels 38:58 Performance Considerations of Platform Channels 40:37 The Future of Bindings 40:46 Integration with Xcode Project 42:41 Challenges with Tooling 46:48 Handling AndroidX Dependencies 50:15 Platform Channels in Maui 53:00 Plugin Recommendation: Xamarin Binding Helpers Links:Objective Sharpie Xamarin.Binding.Helpers Platform Channels
Jan 12, 2024
53 min
87: Couchbase Mobile Update with Robert Hedgpeth
It's been a few years since we've talked Couchbase on the show, so with their recent release of Couchbase Mobile 2.5 we thought we'd bring Robert Hedgpeth on to catch us up!Special Guest: Robert Hedgpeth.Sponsored By:Telerik: Capitalizing on the innate benefits of the native UI while exposing all objects and properties in C#, Telerik UI for Xamarin is a collection of Xamarin.Forms controls and Xamarin wrappers which offer fast loading, excellent drawing capabilities and pixel-perfection while providing “no-compromise” customization, flexibility and stunning UI. Telerik UI for Xamarin. .NET Tools for .NET Ninjas. Download a trial today! Links:Couchbase Mobile 2.5 Released Couchbase Mobile Gone Mobile 10: Couchbase Lite
Jul 10, 2019
50 min
Load more