In my previous (and first) blog post on App Center I talked about getting started, adding the SDK to your code, and looking at Analytics and Crash reporting. In this post I’d like to discuss building your app on App Center; which allows you to distribute your app to Beta testers and others.
There are a few steps in setting up and configuring your build process, but once done, building is as simple as pressing a button (or, even simpler, you can set it up to build on every push to your source control!)
There is no doubt that Microsoft’s VS App Center is an incredible resource for mobile application programmers. The problem is that it seems hard to get started. The good news is that once you get started, it turns out to be wicked easy!
For this blog post, I’m going to assume that you are already sold that App Center is the Cat’s Meow; if not check out this article by Microsoft on why App Center is so cool.
The short version is that App Center allows you to Build your application in the cloud, directly from your repository. You can Test (using Xamarin Cloud) and you can Distribute to beta testers. You can also set up and view analytics and crash reports. Finally, you can set up push notifications.
In the next few blog posts I’ll go over each of these areas, and be sure to keep an eye out for my forthcoming course on App Center on LinkedIn Learning (part of my Azure Essentials series) . You’ll find these posts on Wintellect’s blog and on my own.
Shawn Wildermuth has been tinkering with computers and software since he got a Vic-20 back in the early ‘80s.
As a Microsoft MVP since 2003, he’s also involved with Microsoft as an ASP.NET Insider and ClientDev Insider. You may have taken one of his more than twenty courses on Pluralsight
He’s authored eight books and innumerable articles on software development. You can also see him at one of the local and international conferences he’s spoken at including TechEd, Oredev, SDC, NDC, VSLive, DevIntersection, MIX, Devteach, DevConnections and Dev Reach.
He is one of the Wilder Minds. You can reach him at his blog. He’s also making his first, feature-length, documentary about software developers today called “Hello World: The Film”. You can see more about it here.
I recently had a client who wanted to create simple reports that consisted of a variable number of columns, followed by a “more” button that takes you to a page with the full details.
The problem was that they didn’t want to hard-code anything. They wanted the ability to add reports without sending out a new version of the software, and they wanted to be able to pick which columns were visible. Yikes!
Jeffrey T. Fritz is a senior program manager in Microsoft’s Developer Outreach Group that works with the community on open source projects and the new Microsoft .NET Core framework. As a long time web developer with experience in large and small applications across a variety of verticals, he knows how to build for performance and practicality. More recently, he has worked closely with developers to teach them to succeed with new tools and frameworks from Microsoft and Telerik
In a recent project, I found myself needing multiple, seemingly unrelated databases. It was crazy to copy and paste the code for such basic operations as getting all the data, etc., so the obvious alternative was a generic repository, and a database with tables for each set of data.
The first step is creating the SQLite repo. We begin by creating the class:
public class GenericSqliteRepository<T> where T : IEntity, new()
It is fairly easy to display a PDF file that is local to your phone. For example, see this article from Xamarin.com.
A bit trickier is to get a PDF from a server and then to display it. Here’s how I did it (note, this blog post offers snippets of code, rather than a complete solution… I will reduce my larger program to something manageable asap)
The first thing I did was create a model object named ReportItem. Its primary goal is to help group all the items in my list of pdf’s, but it contains the all-important URL to the pdf itself.
Next, I created a page named ShowPDFPage. In the XAML part of this page I just have a CustomWebView: