Okay, you're tired of repeating the same copy and paste code in every project you create for this native implementation that there is no available plugin from Xamarin or a Xamarin developer out there! You create your interface, create the implementation classes, register to a DI container or just a service locator, and resolve the dependencies in runtime. It works!
Now, for a minute imagine creating your own plugin. If the client remembers to register your plugin with your implementation for each platform then everything's OK, and you will be depended in a custom internal or third-party service locator and DI container? Doesn't sound very practical, right?
Yes, there is a better way to do things. A good friend named it Bait and Switch PCL, and Miguel De Icaza from Xamarin has called it the Advanced PCL pattern.
What this pattern essentially solves is the process of creating interface abstractions to program against and injecting implementation classes conforming...