Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Xamarin devdays 2017 - PT - connected apps
1.
2.
3. Windows Platform Development Microsoft MVP
Microsoft Windows DevCamp Trainer
Windows Insider
CTO @ Innovagency
Software Dev/Arch as Independent
Technical Trainer and Speaker as Independent
Teacher @ EDIT
Contacts
@alexmarreiros
amarreiros@gmail.com
Digitalmindignition.com
innovagency.com
10. Cloud Connected WebAPP
“A cloud connected mobile application is a mobile client that
connects to a mobile backend for shared services. Quite a few of
the apps on your phone are cloud connected already. For
example, Instagram uses the cloud for photo storage, and
Facebook uses the cloud to store the news feeds of you and your
friends.”
18. RESTAPI
Offline
sync
Facebook Twitter Microsoft Google Azure Active
Directory
Azure Mobile Apps
WindowsAndroid
Chrome
iOS
OSX
In-AppKindle
Backend code
SQL MongoTables O365 API Apps
Offline Sync
19. Azure Mobile Apps
Multiple languages and frameworks - App Service has first-class support for
ASP.NET, Node.js, Java, PHP, and Python
DevOps optimization - Set up continuous integration and deployment with Visual
Studio Team Services, GitHub, or BitBucket. Promote updates through test and
staging environments. Perform A/B testing.
20.
21. Create a Mobile Service
MobileService = new MobileServiceClient(
"https://myapp.azurewebsites.net");
22. Create tables
IMobileServiceSyncTable<TodoItem> syncTable;
public async Task Init()
{
const string path = "syncstore.db";
var db = new MobileServiceSQLiteStore(path);
db.DefineTable<TodoItem>();
}
await MobileService.SyncContext.InitializeAsync(db);
syncTable = MobileService.GetSyncTable<TodoItem>();
And you get all the goodness shown in the previous slides across the WW
Extremely powerful
You can do almost anything your backend would ever need to do with Azure. Data storage, authentication/authorization, push notifications, custom APIs, blob storage, etc.
Flexible
Need something lightweight? Azure is there.
Need something robust and powerful? Azure is there.
C# clients
I’m a frontend developer, I care a lot about how easy this makes MY job (selfish)
Many C# clients are written by Java developers, etc.
Easy to use C# client
Abstracts away much of pain of using a RESTful API
C# Features
Async / Await / TPL
Uses C# idioms
Properties, Fluent API
Seems obvious, but not always true (first class citizen)
What if a GetAll should only return favorites for that user.
Backend deletes expired handles when PNS rejects them
Maintain mapping between logical users/groups and device handles
With Xamarin it just isn’t your front end in C# it is your full backend server as well. With Azure or even on Linux running Mono or the CoreCLR your app is fully C# end to end!
Get started today with free 30 day trial of Xamarin at xamarin.com