Reactive Properties in Xamarin Forms

In this post, we will look at using Xamarin Forms in a more reactive manner, which will give more control over validation and synchronous UI updates, with potential to easily add custom animations.

The primary components for a Xamarin Forms mobile app are view models, presenters, services, repositories, business layers, DTOs etc. All interaction with a mobile app can be thought of as a series of asynchronous events handled by the view model. All interactions with the underlying layer, i.e services, notifications, data layers, picking a photo, communicating over the network, are all a series of asynchronous events.… [Keep reading] “Reactive Properties in Xamarin Forms”

ViewModel-first approach in Xamarin forms

There are primarily 3 patterns to choose when developing mobile applications. They are MVC, MVVM and MVP. For a detailed discussion about them check Xamarin application architecture.
The focus of this post will be around MVVM pattern. One of the earliest and most stable MVVM libraries for Xamarin has been the MVVM Cross library Like most libraries, this also followed a ViewModel-first approach. What this means, that the focus of the developer is always on the ViewModel and the data in the application.… [Keep reading] “ViewModel-first approach in Xamarin forms”

Enterprise-ready testing in Xamarin

As focus moves towards mobile-first development, enterprise developers should also focus on automated testing. In an enterprise setting, we like to test for merge conflicts, sync issues, authentication failures, etc and we need to test this on hundreds of devices.
In this post, we will look at how we can set UI test project and application code so that we can test against scenarios that we face in a real-life situation (no connection, sync issues, authentication failures).… [Keep reading] “Enterprise-ready testing in Xamarin”

Versioning of Android app (Dev, Stage, and Prod) using same code base – Xamarin Forms

We will be continuing our journey into App versioning, this time for Android. Similar to iOS, in Android, we have to create Compiler symbols too. For those who have missed iOS versioning blog, click on below is the link.
Versioning of iOS app (Dev, Stage, and Prod) using same code base – Xamarin Forms

Set different configurations

Similar to iOS, setup all the required configurations as shown below,

Dev

Screen Shot 2018-04-28 at 12.42.35 am.png

Staging

Screen Shot 2018-04-28 at 12.43.26 am.png

Prod

Screen Shot 2018-04-28 at 12.54.45 am.png

Compiler symbols options

Double-clicking on Android project should prompt with Project Options, go to compiler tab under Build section.… [Keep reading] “Versioning of Android app (Dev, Stage, and Prod) using same code base – Xamarin Forms”

Versioning of iOS app (Dev, Stage, and Prod) using same code base – Xamarin Forms

App versioning based on same code base is the favorite feature of most of the clients I worked for various reasons. Usually, this feature is requested to cater App to the different set of departments or support multi-tenancy that client want to support. When creating a complex app, there are n-number of teams working together to build it, which includes dev testers,  beta testers, or even a client who wants to demo a product before actually purchasing it.… [Keep reading] “Versioning of iOS app (Dev, Stage, and Prod) using same code base – Xamarin Forms”

Xamarin Forms – Platform Specifics (iOS) : Blur Effect

As a Xamarin mobile developer ever wonder, why we need write some much of code in PCL and iOS projects to do simple Native feature, some of which are usually one-liners code natively.
Xamarin has now introduced a nice nifty feature that helps us to write code in Xamarin Forms in the form of Platform Specifics.
In short, Platform Specifics helps us to consume the features or functionalities that are only available on iOS, without needing to implement custom renderers or effects in the required platform project.… [Keep reading] “Xamarin Forms – Platform Specifics (iOS) : Blur Effect”

Xamarin Application Architecture

In this post, I will talk about strategies for developing a cross-platform Xamarin application with a focus on code sharing, increasing testability, and reducing overall development and maintenance efforts.
The application architecture is itself problem specific, but there are certain design patterns that can guide the overall structure of the application. The ones I mostly work with are Model-View-Controller, Model-View-Presenter, and Model-View-ViewModel.
MVC should be adopted for small applications or proof of concept. Since Android and iOS both natively support MVC, it will mean fewer roadblocks and faster implementation.… [Keep reading] “Xamarin Application Architecture”

Xamarin Forms – App Center: Show BuildID on iOS App

Introduction

App center helps us to connect support git repositories (i.e GitHub, Bitbucket or VSTS)  and build the app for us either on every code commit or manually. It also sends notifications to users that are registered to it. It will also help us to run tests on the actual device and runs any unit tests in the project.

iOS and Android

App Center can be set up to build individual platforms projects.

Scenario:

Required to show BuildID on iOS APP during the development phase, as shown below.… [Keep reading] “Xamarin Forms – App Center: Show BuildID on iOS App”

Xamarin Forms: Mircosoft.EntityFrameworkCore.Sqlite issue with Physical devices

Introduction

Building Xamarin Forms apps using .Net Standard 2.0 is still pretty much new to industry, we are just started to learn how differently we have to configure Xamarin setting to get it working when compared to PCL based projects.
I was building a Xamarin Forms based App using Microsoft’s Entityframeworks SQlite to store app’s data. Entity framework using sqlite is an obvious choice when it comes to building App using .Net Standard 2.0

Simulator

Works well on pretty much on all simulators without any issue, all read/write operations works well.… [Keep reading] “Xamarin Forms: Mircosoft.EntityFrameworkCore.Sqlite issue with Physical devices”

Xamarin forms using .Net Standard 2.0

Introduction

All Xamarin developers, please welcome Net standard 2.0. This is the kind of class library we were waiting for all these years. The .Net standard 2.0 specification is now complete and it is included with Net core 2.0, Net framework 4.6.1 and up to latest versions. It can be used using Visual Studio versions 15.3 and up. Net Standard 2.0 obviously supports C# and also F# and Visual Basic.

More APIs

Net Standard 2.0 is for sharing code via various platforms.… [Keep reading] “Xamarin forms using .Net Standard 2.0”