About Xamarin.Android

Easily create apps in C# for Android.

Xamarin.Android provides all the tools to build native cross-platform apps in one package. Xamarin.Android lets you create, build, debug and deploy apps in Visual Studio, or use Xamarin Studio, a fully-featured IDE that is built for mobile app development. Xamarin delivers high performance compiled code with full access to all the native APIs so you can create native apps with device-specific experiences.

Build native Android apps with Xamarin.Android

  • Ship native Android packages.
    Xamarin.Android uses just-in-time compilation for sophisticated runtime optimization of your app’s performance. Your app is a native Android APK - not cross-compiled, not interpreted, and not a web page posing as an Android app.
  • Access any Android API, including new form factors.
    Xamarin bring 100% of Google’s Android APIs to C#, enhancing Java APIs with async support and .NET naming conventions so you feel right at home. They even shipped same-day support for Google Wear and the latest Google Glass SDK.
  • Call existing Java code from C#.
    Use your existing Java code, frameworks, and custom controls in your Xamarin app using Xamarin's automatic binding generator. You’ll likely find excellent .NET alternatives to your favorite Java libraries, but bindings give you the best of both worlds.
  • Always up-to-date with Android.
    Xamarin stays up-to-date with the latest APIs from Google. Xamarin are ready for each new dessert, from Ice Cream Sandwich to KitKat, so you can always use the latest features in your apps. They even include support for the experimental ART runtime.


The Xamarin Platform of products allow you to build apps in C# for iOS, Android, Windows Phone, Mac OSX, Windows, Google Glass and more.

Xamarin apps look and feel native because they are native.

  • Native User Interfaces
    Xamarin apps are built with standard, native user interface controls. Apps not only look the way the end user expects, they behave that way too.
  • Native API Access
    Xamarin apps have access to the full spectrum of functionality exposed by the underlying platform and device, including platform-specific capabilities like iBeacons and Android Fragments.
  • Native Performance
    Xamarin apps leverage platform-specific hardware acceleration, and are compiled for native performance. This can’t be achieved with solutions that interpret code at runtime.


Share code everywhere.
Use the same language, APIs and data structures to share an average of 75% of app code across all platforms. Build user interfaces with Xamarin.Forms and share nearly 100%.

  • Shared Projects
    Add any file to a Shared Project and it’s automatically included on all platforms. Share code, images, and any other media across iOS, Android, and Windows Phone.
  • Portable Class Libraries
    Use popular Portable Class Libraries (PCLs) like SQLite, Json.NET, or ReactiveUI on every platform. Build your own app logic as a PCL and use it everywhere.
  • Xamarin.Forms
    Xamarin.Forms allows you to build native user interfaces for iOS, Android and Windows Phone using 100% shared C#. Xamarin.Forms includes more than 40 controls and layouts, which are mapped to native controls at runtime.

Build native Android and Windows apps in Visual Studio.

  • Explore the Android API fluently with IntelliSense.
    IntelliSense inside Visual Studio enables you to explore the expansive landscape of the Android API simply by typing. Quickly lookup types, methods and discover API functionality without breaking your train of thought.
  • Use the tools you know and love.
    Stay productive by continuing to leverage the entire Microsoft ecosystem, including ReSharper, Team Foundation Server (TFS), TeamCity, Jenkins and your favorite code coverage and profiling tools.
  • Debug like a pro.
    Track down bugs using the full power of a modern debugger, which can debug your app whether it's running in a simulator, or live on-device. Set breakpoints, step through code and watch values change during execution.


Design incredible user interfaces for Android without leaving Visual Studio.

  • Never touch a line of XML.
    Easily create Android screens by dragging controls onto screens, and configuring them using the properties pad. No need to get your hands dirty with XML.
  • Design multiple resolutions at once.
    The Android Designer makes things easier for Android developers by previewing layouts across multiple screen resolutions and device form factors simultaneously.
  • Perfect property editing.
    Quickly configure the appearance, layout, field names, and event handlers for controls and views using a sleek properties pad.


Xamarin.Forms
Use the Xamarin.Forms API to quickly build shared screens for iOS, Android and Windows Phone. If you know C#, you already know how to build iOS, Android, and Windows Phone apps. Xamarin designed an API that works exactly how C# developers expect. Xamarin.Forms pages represent single screens within an app. Pages contain layouts, buttons, labels, lists, and other common controls. Connect these controls to shared backend code and you get fully native iOS, Android, and Windows Phone apps built entirely with shared C#.

At runtime, each page and its controls are mapped to platform-specific native user interface elements; for example, a Xamarin.Forms Entry becomes a UITextView on iOS, a EditText on Android, and a TextBox on Windows Phone.

Mix-and-match with platform-specific code.

  • Decide page-by-page.
    Xamarin.Forms is great for forms-based screens, and you can mix Xamarin.Forms with the full power of Xamarin.iOS and Xamarin.Android in the same app. For example, use Xamarin.Forms for your login and settings screens, and Xamarin.iOS and Xamarin.Android for the rest of your app.
  • Embed custom views anywhere.
    Not only are Xamarin.Forms pages mixable with custom screens, but you can embed custom views built directly against Xamarin.iOS and Xamarin.Android into Xamarin.Forms pages.
  • Call platform APIs via shared services.
    Need platform-specific functionality within a Xamarin.Forms page, such as querying the accelerometer? We’ve included services that quickly and easily abstract platform-specific API calls to keep you writing as much shared code as possible.


Extend Xamarin.Forms with custom controls.

  • Define your own controls, layouts, pages and cells.
  • Expose your own platform-specific controls in Xamarin.Forms pages.
  • Subclass included controls and customize their behavior.


Build pages entirely with XAML.

  • Define views, layouts and bindings in a succinct markup language.
  • Note: Xamarin.Forms is not compatible with pre-existing XAML visual designers.


Architect with MVVM and data bindings.

  • MVVM architecture for clean separation of UI and app logic.
  • Two-way data bindings automatically sync data between controls and models.
  • Mobile-optimized dependency injection with <10ms startup time.
  • Messaging center for loosely-coupled messaging between app components.


Weave captivating animations.

  • Basic animations (e.g. rotate, fade, scale) which can be composed to build complex effects.
  • Low-level animation API for building custom, replayable animations.
  • All operations delegate to platform-specific animation APIs (e.g. CoreAnimation on iOS) for optimal performance.
  • Animations are awaitable using async/await for developer-friendly sequencing.


What’s included with Xamarin.Forms

Pages

  • ContentPage
  • MasterDetailPage
  • NavigationPage
  • TabbedPage
  • CarouselPage


Layouts

  • StackLayout
  • AbsoluteLayout
  • RelativeLayout
  • GridLayout
  • ContentView
  • ScrollView
  • Frame


Controls

  • ActivityIndicator
  • BoxView
  • Button
  • DatePicker
  • Editor
  • Entry
  • Image
  • Label
  • ListView
  • Map
  • OpenGLView
  • Picker
  • ProgressBar
  • SearchBar
  • Slider
  • Stepper
  • TableView
  • TimePicker
  • WebView
  • EntryCell
  • ImageCell
  • SwitchCell
  • TextCell
  • ViewCell