The following is a list of my articles, books, and publications on Android for Handsets and Tablets.
- Asynchronous Operations with Xamarin.iOS published by Visual Studio Magazine. The release of .NET 4.5 (and C# 5.0), in the fall of 2012, was a blockbuster update with regards to asynchronous operations and threads. Microsoft has added C# language keywords to take this non-linear callback-based program flow and turn it into a much more linear flow. Recently, Xamarin has updated Xamarin.Android and Xamarin.iOS to support async.
- Mapping and Location with Xamarin.Android published by Visual Studio Magazine. Real Estate is all about location, location, location. Mobile is about
maps, location and maps. Maps are an excellent mechanism to communicate
information about locations. Maps are graphical, and you know that a
picture is worth a thousand words. When users are mobile, presenting a
user with a map provides him with easy-to-understand location
information in a graphical format. Android provides full mapping support
to present maps to users along with a programmable API. In this
article, I'll introduce the mapping and location APIs in Mono for
- Improve your Xamarin.Android User Interface published by Visual Studio Magazine. You never get a second chance to make a first impression. For an
application, that first impression is how your user will interact with
your application. Users want to get into an application, do some work
and then get out (unless your application is a game). Users have other
things to do in their lives. This article will examine how to provide
some simple enhancements to your application's UI, which will allow
users to get things done quicker.
- Cross Platform - Platform Exploration published by Learn Now Online, LLC.
In this course, we will take a quick look at Monocross.
With Monocross, we can have a device container, such as an iPhone or
Android container. Outside of that device container, we have device
independent code that we can use. Then we’ll look how to use MonoTouch
and Mono for Android to build applications that run on handsets as well
as tablets. For iOS, this means that we can use a Universal application
to build an app that runs on the iPhone as well as iPad. For Android,
this means that we can build one application that can run on handsets
and tablets. To end the course we’ll look at a few pitfalls that
developers need to be aware of when building applications using
MonoTouch and Mono for Android.
- Cross Platform - APIs for Cross Platform - Web Services, LINQ, Xamarin.Mobile, JSON, XML published by Learn Now Online, LLC.
In this course, we will look at the Xamarin Mobile API.
Mobile devices tend to have features that are functionally the same
except for the APIs. For example, there is a geolocation api. The
geolocation api is functionally the same across iOS and Android, yet the
APIs are very different. Then we’ll look at various other services that
can be commonly used in the mobile world with iPhone and Android. We
can use the same API to call out to web services to get data. When that
data comes back, we can use the same API in JSON and XML to process
returned data in the iPhone and Android.
- Cross Platform - Solutions and File Linking published by Learn Now Online, LLC.
In this training course, we will look at the background on
mobile, what is happening in the marketplace, why cross platform
development makes sense, and some general strategies for cross platform
development with iOS, Android, and Windows. These platforms all have one
thing in common; the platforms can all be targeted with the C#
language. Next we will examine file linking, general abstraction, the
observer pattern, partial classes, and conditional compilation. In file
linking, we can use cross platform language features, such as calling
web services, LINQ, XML, and JSON to handle the communication with a
remote data source on both android and iPhone.
- Use the Android Support Libraries published by Visual Studio Magazine. Google has a set of libraries that allow older versions of Android to
get support for newer APIs. Mono for Android provides full support.
- Android 4 and Fragments published by Visual Studio Magazine. Learn how to use the Fragments API in Xamarin.Android to create an
application UI for multiple screens, such as a handset and tablet.
- Location in Xamarin.Android published by Visual Studio Magazine. Like real estate, mobile is about location, location, location. That
means that direction is an important item. And just as important is how
this information is presented to the user. In Nov. 2011, we talked
about building a user interface
in Mono For Android. In this article, I'll expand a little bit on that
by creating a compass that displays north. We'll use Android's
built-in sensor support to determine the orientation of the device,
then use a custom control to display North.
- Databinding a ListView in Xamarin.Android published by Visual Studio Magazine. The world lives on data. Data is all around us and in many forms:
salespeople need to know what customers have spent; twitter users want
to know what their friends are saying. How do we as developers present
data to a user? In Android, we use the ListView in its various forms.
In this article, we'll look at using a ListView, how we can work with
it, then discuss what we need to do to overcome some of the challenges
in a mobile environment.
- The wait is over! For the millions of .NET/C# developers who have
been eagerly awaiting the book that will guide them through the
white-hot field of Android application programming, this is the book. As
the first guide to focus on Mono for Android, this must-have resource
dives into writing applications against Mono with C# and compiling
executables that run on the Android family of devices.
proven Wrox Professional format into practice, the authors provide you
with the knowledge you need to become a successful Android application
developer without having to learn another programming language. You'll
explore screen controls, UI development, tables and layouts, and
MonoDevelop as you become adept at developing Android applications with
Mono for Android.
- Building a User Interface with Mono for Android.
There's no doubt about it: Smartphones based on the Android OS are
hot. Currently, they're generating 550,000 activations per day. Their
market share is at approximately 40 percent, and continuing to rise.
That success wouldn't be happening without a friendly, clean UI.
Many times, a user will base their feelings about an application on the
UI. In this article, I'll look at the XML layout language for Android,
some controls that can be used in Android and the tools that can be used
to create a UI -- namely, Mono for Android, which enables you to create
native apps in C# and Visual Studio using an open source implementation
of the Microsoft .NET Framework. Then I'll talk about how choices can
factor in with some of the constraints, such as the battery.
- Introduction to Mono for Android.
The past year has been amazing for smartphone and mobile device
lovers like me. It seems that everywhere I go, people are talking
mobile. It's mobile this and mobile that, with good reason. Here are
some interesting facts to consider:
- Opera Software ASA, maker of the popular Opera browser, reports that
more of its users are accessing the Internet over mobile devices than
- According to Gartner Inc., smartphone sales grew 96 percent in the third quarter of 2010 year over year.
- Market research firm Canalys reports that the Google Android
platform is running on 43.6 percent of all smartphones that were shipped
in the third quarter of 2010.
- NPD Group Inc. reports similar results, with Android taking 44
percent of the smartphone market place during the third quarter of 2010.
Android is approaching 300,000 activations per day. Currently, there
are more than 100,000 apps in the Android Marketplace. Application
developers are clearly targeting the platform.
- Introduction to Mono for Android Part 2. This is part 2 of the Introduction to Mono for Android.
- Introduction to Mono for Android video training series. The smart phone is quickly becoming a necessary tool for employees and
customers alike. It has become necessary for highly mobile businesses to
adopt this new technology. This course will show how to create
applications for the Android OS, found on both smart phones and tablets,
using Mono for Android. Mono for Android is an add-on for Visual Studio
2010 using C# and the.NET framework to build applications for the
Android OS instead of coding in the native Java code. The course will
start with an introduction to the Android OS and platforms then do an
introduction to the MONO development environment. Then move onto basic
UI design, screen controls and SQLite. The course follows up with the
subjects of remote data, location services and Geocoding.
- Mono for Android Webinar - Building a User Interface with Mono for Android.
My webinar from last week on building a user interface with Mono for Android is now available online. The webinar covered:
We will look at the basics of building a user interface for Android with Mono for Android. The user interface is typically the first thing that a user sees when they work with your application. They will often judge your application based on the user interface. We will examine the basic concepts of UI design with mobile devices, the Android XML based layout language, some of the UI design surfaces for Android, some basic Android controls and finally some suggestions on creating a successful Android User Interface.
- Android Development with Mono for Android 4 - Training via AppDev
My Android Development with Mono for Android 4 Video Training Series via AppDev is out and available. That's right, .NET/C# developers can now write native apps for Android devices. I hope that this is helpful to you as you get up to speed with Mono for Android. Here is some info on the training:
This course will show you how to use Mono for Android 4 by starting with how to install Mono for Android 4, introduce the SDK tools and then debugging of applications. The course then will show how to use the Emulators for items like interface design and controls. Next are the different types of Android devices and how to support them. Application Activities and lifecycles are covered and then Menus, Tables and Data. The course will then show the soft keyboards, advanced controls, user notifications and working with the contacts lists. The course will conclude with working with device hardware for directions, multimedia and Geo location.
- Advanced android Development with Mono for Android - training Via AppDev
This course is about
how to use Mono for Android with Tablets and the new Android 4.0 Ice
Cream Sandwich release. The course introduces Android Tablets and
Fragments, new controls that are available through Android 4.0, new
application programming interfaces in Android 4.0, and new features
available in the Google Android SDK Release 17 that can improve their
development experience. This course also contains a module on the
Android Design Experience, what developers can use to improve the user
experiences, design suggestions from Google’s Android team, and some
thoughts on how to improve the design experience via software code.
A bundle of 3 best-selling and respected mobile development e-books from Wrox
form a complete library on the key tools and techniques for developing apps
across the hottest platforms including Android and iOS. This collection
includes the full content of these three books, at a special price:
Android Programming with Mono for Android and .NET/C#, ISBN:
9781118026434, by Wallace B. McClure, Nathan Blevins, John J. Croft, IV,
Jonathan ***, and Chris Hardy
- Professional iPhone
Programming with MonoTouch and .NET/C#, ISBN: 9780470637821, by Wallace
B. McClure, Rory Blyth, Craig Dunn, Chris Hardy, and Martin Bowling
Cross-Platform Mobile Development in C#, ISBN: 9781118157701, by Scott
Olson, John Hunter, Ben Horgen, and Kenny Goers
- Plug in to Mono for Android for Lights, Camera and Video Apps - Multimedia is expected in
today's mobile applications, and the fun isn't only for smartphone and
tablet users. Mono for Android, based on the Mono project's open source
implementation of the Microsoft .NET Framework, can help you take
advantage of Android Camera APIs in Visual Studio.
- Better Debugging with Mono for Android - Let's be honest: When debugging with Android -- and Mono for Android
(MfA) on Windows by extension -- using the emulator requires patience.
This isn't a condemnation of Mono for Android; merely recognition of the
reality of having to live within the Android ecosystem. I've noticed
that most developers who develop on Android tend to be using a Mac. I
think this is due to the development experience on the Mac being better
overall for Android.
- Cross Platform Development with Mono for Android and MonoTouch -
Many years ago, in fact pre-Java, I remember a hallway discussion about the desire to write a single application that could easily run across various platforms. At the time, we were only worried about writing applications on Windows 3.1 and Mac OS 7.x. There were many discussions about windows, user interface concepts, and specifically a rather long discussion as to whether Mac users would accept a Mac application that didn't have balloon help. Thankfully, the marketplace answered this question for us with the Windows API winning the battle.
A similar set of questions is currently going on in the mobile world. Unfortunately, at this point in time, there is currently no winning API and none currently in sight. What's a developer to do? Here are some questions that developers have (and there are many more):
- How can mobile developers target Android and the iPhone with the same code?
- How can .NET developers share their code across Android, iPhone and other platforms?
- How can developers give applications the look and feel of the specific platform and still allow as much code as possible to be shared?
- Mobile devices share many common features, such as cameras, accelerometers, and address books. How can we take advantage of them in a platform independent way and still give the users the look of every other application running on their platform?
In this article, we'll look at some solutions to these cross-platform and code-sharing questions between Mono for Android, MonoTouch and the .NET Framework available to developers.
- Better Debugging with Xamarin.Android published by Visual Studio Magazine
- A review of our Mono for Android book - http://www.linkedin.com/groups/Professional-Android-Programming-Mono-Android-4318399.S.121652306