/app-acquaint

A Xamarin demo app featuring both Xamarin.Forms and native approaches to Xamarin development

Primary LanguageC#

Acquaint

A simple Xamarin app named Acquaint. The app is a simple list of contacts, each of which can be viewed in a detail screen and modified in an edit screen. It runs on iOS 9+, Android 4.2+, and UWP (mobile and desktop).

##Build Status

Project master branch
Acquaint.XForms.Droid
Acquaint.XForms.iOS
Acquaint.XForms.UWP
Acquaint.Native.Droid
Acquaint.Native.iOS

##Cross-platform and native The app is implemented in two ways in order to demonstrate the two different approaches to Xamarin app development:

  • Xamarin.Forms cross-platform UI
  • Xamarin native, with platform-specific UI implementations

##Three platforms The app targets three platforms:

  • iOS
  • Android
  • Universal Windows Platform (UWP)
    • UWP currently only in Forms version of app
    • UWP supported only in Visual Studio, not Xamarin Studio

##Code sharing #####~90% code shared across platforms in Acquaint.XForms

#####~33% code shared across platforms in Acquaint.Native

##Integrations Includes integrations such as:

  • getting directions
  • making calls
  • sending text messages
  • email composition

Requirements

  • Visual Studio 2015 (14.0 or higher) to compile C# 6 langage features (or Xamarin Studio OS X)
  • Xamarin add-ons for Visual Studio (available via the Visual Studio installer)
  • Visual Studio Community Edition is fully supported!

Google Maps API key (Android)

For Android, you'll need to obtain a Google Maps API key: https://developer.xamarin.com/guides/android/platform_features/maps_and_location/maps/obtaining_a_google_maps_api_key/

Insert it in the Android project: ~/Properties/AndroidManifest.xml:

<application ...>
  ...
  <meta-data android:name="com.google.android.geo.API_KEY" android:value="GOOGLE_MAPS_API_KEY" />
  ...
</application>

Platform-specific UI Features (in native version only)

3D Touch Previewing (iOS) Shared View Transitions (Android)

Screens

The app has three main screens:

  • a list screen
  • a read-only detail screen
  • an editable detail screen

##People

All images of people in the app come from UIFaces.com. In accordance with the guidelines, fictitious names have been provided.