The following is the first few sections of a chapter from The Busy Coder's Guide to Android Development, plus headings for the remaining major sections, to give you an idea about the content of the chapter.

The ContactsContract and CallLog Providers

One of the more popular stores of data on your average Android device is the contact list. Ever since Android 2.0, Android tracks contacts across multiple different “accounts”, or sources of contacts. Some may come from your Google account, while others might come from Exchange or other services.

This chapter will walk you through some of the basics for accessing the contacts on the device. Along the way, we will revisit and expand upon our knowledge of using a ContentProvider.

First, we will review the contacts APIs, past and present. We will then demonstrate how you can connect to the contacts engine to let users pick and view contacts… all without your application needing to know much of how contacts work. We will then show how you can query the contacts provider to obtain contacts and some of their details, like email addresses and phone numbers. We wrap by showing how you can invoke a built-in activity to let the user add a new contact, possibly including some data supplied by your application.

In addition, we will take a peek at the CallLog provider, which, as the name suggests, gives you access to a log of calls made on the device.


Understanding this chapter requires that you have read these chapters in addition to the core chapters:

Introducing You to Your Contacts

The preview of this section is being chased by zombies.

Pick a Peck of Pickled People

The preview of this section was traded for a bag of magic beans.

Spin Through Your Contacts

The preview of this section is sleeping in.

Makin’ Contacts

The preview of this section was fed to a gremlin, after midnight.

Looking at the CallLog

The preview of this section was traded for a bag of magic beans.