Saturday, September 21, 2013

How does AirDrop's Contacts Only setting work?

AirDrop is one of iOS 7's new features. The Contacts Only option is particularly interesting, but it is lacking in documentation which can make it challenging to get it to work properly. All of the documentation I have seen so far talks about how you have to add the contact to your address book, and that's about as much detail it goes in to. That statement is very vague considering all the different features on iOS devices, so I thought I would clear up some of the confusion.
In the following examples, the sender refers to the person sending a file via AirDrop, and the receiver is the one receiving the AirDropped file. The sender has AirDrop disabled, and the receiver is the one with AirDrop set to the Contacts Only option.

What are the minimum steps required in order to get AirDrop's Contact Only feature working?

  1. Both people must be logged in to iCloud.
  2. Both people must have the screen, Bluetooth, and Wi-Fi turned on.
  3. Both people must be in close proximity to each other (about 30 feet).
  4. Both people must have a device and iOS version which supports AirDrop.
  5. The receiver must have AirDrop's Contact Only feature enabled.
  6. The receiver must have one of the sender's iCloud addresses in their contact list.
  7. The sender can now initiate an AirDrop transfer.

Why is iCloud required?

Presumably, this is because Apple must know which addresses to broadcast to nearby AirDrop devices.

For the sender, the requirement is easy to understand. If it didn't require an iCloud account, you would be able to spoof yourself as having millions of millions of addresses and would be able to bypass the Contacts Only option. For example, in theory you would be able to tell every single device that you are,, ..., If the receiver's contact list has ANY of those addresses in their contact list (which it would), then it would be considered as though you are on the receiver's contact list. By going through iCloud, you must actually verify with Apple that you own all of those email addresses.

For the receiver, the requirement is less clear, but might be because the sender's iOS device matches the contact against its own contact list in order to improve the AirDrop experience. (See: Do we both have to have each other as contacts?) 

To better understand this, here's a basic idea of how AirDrop might be working behind the scenes:
  1. The sender launches a screen which initiates AirDrop searching (e.g. by tapping the share button on a photo.
  2. While that screen is visible, every few seconds, the phone will begin to look for AirDrop devices.
  3. The sender's phone sends a Bluetooth signal to all devices around it letting everyone know its iCloud email addresses and phone numbers. (This is probably why it is necessary to be logged in to iCloud on the sender's device.)
  4. The receiver's phone picks up this signal and checks it against its AirDrop settings.
  5. If AirDrop is set to Contacts Only, it searches its contact list for any of those registered addresses it received.
  6. If it finds a match, the receiver's device sends a signal back letting the sender's device know that it is able to receive files from the sender. It also sends all of the receiver's registered addresses to the sender, in addition to the device info.
  7. The sender's phone gets the signal and displays an icon letting the user know that it found an AirDrop device. If the sender finds one of those registered addresses in its contact list, it will display the contact's info. Otherwise, it will display the device info that was sent by the receiver.

Do we both have to have each other as contacts?

The only necessary contact list entry is the one on the receiver's device. The receiver must have one of the sender's iCloud addresses in their contact list. However, there is a benefit of the sender having the receiver's info entered in as a contact as well...

When the sender is a contact in the receiver's device (only):
  • In the sender's AirDrop action sheet, they will see the receiver with no image and instead of seeing the receiver's name, the sender will see the receiver's device name (e.g. Receiver's iPad).
When the sender and receiver have each other as contacts:
  • The sender will now see the receiver's contact picture and contact name in the AirDrop action sheet. Presumably, the sender's iOS device is 

Which contact list are they referring to? Will it work with any of the contact lists, or does it have to be my iCloud contact list?

Any contact list on the device will work.

My guess is that the receiver's device is matching the sender's iCloud addresses against its entire contact database (across all accounts). This means that if you are syncing hundreds of Gmail or Outlook contacts, all of those addresses will be able to see your device as well (as long as they are within Bluetooth range, of course).

What does "being a contact" mean? Does it mean I must have their iCloud email in my address book? Does it mean I must have their phone number (e.g. for FaceTime) in my address book?

The receiver's contact list must contain at least one of the sender's iCloud FaceTime/iMessages phone number or email addresses.

For example, if the sender launches the Settings > FaceTime and sees as one of his/her addresses, then the receiver must ensure that appears somewhere in his/her contact list.

Do both people have to have AirDrop enabled? 

No, only the receiver's AirDrop must be enabled and set to the Contacts Only option (since that is what this webpage is about). The sender's AirDrop can be disabled.

Does the phone need to be unlocked and/or does the screen have to be on?

Note: Here the term unlocked refers to the phone's screen being on and the phone not being on the lock screen (e.g. you have already entered in your passcode).

The sender's phone must obviously be unlocked in order to initiate the AirDrop file transfer. The receiver's screen must be on, but the phone can be at the lock screen. In order to accept or decline the transfer, the receiver must enter in the passcode to pass the lock screen.

Does the phone number have to match exactly in the contact list?

No, if your phone number in the settings appears as +1 (555) 555-1234, then it is enough to have your phone number appear as 1 (555) 555-1234 or even (555) 555-1234 in your friend's contact list.

How can I access AirDrop's settings?

The only settings available are in Control Center, and you only have 3 options: Off, Contacts Only, and Everyone.

When I select the Contacts Only option, it sometimes doesn't appear in white, is this normal? 

In order for AirDrop to work correctly, it must appear in white after you choose that setting. If it doesn't, try restarting the phone until it does. Only once you see AirDrop: Contacts Only appear in white text has the setting been enabled correctly.

What else do I need to know? 

The way this works, the more email addresses and phone numbers you have in your contact list, the less secure the feature is. This means that you should delete old phone numbers and not leave any stale contact information in your contact list.

Sometimes the sender's AirDrop interface (i.e. the one that shows who is available to AirDrop to) updates automatically, but other times you need to cancel out of the screen and go back into it in order for it to refresh automatically.

Sometimes you will need to edit and save a contact's details in order for AirDrop to recognize the contact again. (E.g. change an email to, save, and then change it back to the original one, and save.)

What is an iCloud address?

This refers to either an iCloud alternative email address, or an iCloud phone number (i.e. if you have an iPhone). See below for more information.

How can I view my iCloud alternative email addresses?

... via a Web Browser:
1. Go to
2. Log in with your iCloud ID.
3. You should see an Alternate Email Addresses section.
4. All the email addresses listed there are considered your alternate email addresses.

... via an iOS device (FaceTime):
1. Launch Settings > FaceTime
2. Ensure that the Apple ID at the top is the same one as your iCloud account.
3. Under the heading You can be reached by FaceTime at you will see email addresses.
4. All the email addresses listed there are considered your alternate email addresses, even if they don't have a checkmark next to them.

... via an iOS device (iMessage):
1. Launch Settings > Messages > Send & Receive
2. Ensure that the Apple ID at the top is the same one as your iCloud account.
3. Under the heading You can be reached by iMessage at you will see email addresses.
4. All the email addresses listed there are considered your alternate email addresses, even if they don't have a checkmark next to them.

How can I view my iCloud phone number?

... via an iOS device (FaceTime):
1. Launch Settings > FaceTime
2. Ensure that the Apple ID at the top is the same one as your iCloud account.
3. Under the heading You can be reached by FaceTime at you should see a phone number listed.
4. If you see a phone number, that is your iCloud phone number. If not, then you probably don't have an iCloud phone number, and you would probably have to buy an iPhone along with carrier service in order to get one.


  1. This is confusing, so you need to have their email saved to your contact and vice versa?

  2. Yeah very confusing still lost. So can anyone with an iPhone within 30 feet of me transfer all my contacts without me knowing?

  3. Is there a way to pass a email adders to airdrop? The To email address for example.

  4. Thanks for sharing. I hope it will be helpful for too many people that are searching for this topic.
    Packers and Movers Hyderabad
    Packers and Movers Pune
    Packers and Movers Mumbai

  5. This is great for shedding light on this feature (you're right: documentation is suspiciously absent.)

    Yet I'm still unable to get it to work, despite having iCloud syncing contacts, being signed into iCloud on both my MacBook Air and iPhone 5S (with the same account), and the email associated with that account being a contact in the sync'd list. Ugh, so annoying.

    Having sharing set to "Everyone" works, so I guess I'll just give up. If anyone has any ideas of what to check, please let me know.

  6. also, these comments could use some spam clean-up :)

  7. just got it working! i tried a bunch of steps per this page:
    and now i show up as a contact, profile pic and all!

    not sure whether it was signing out of iCloud on both devices, disabling & enabling iCloud Drive, disabling & renabling Bluetooth on both, or signing out and into the App Store (wouldn't have thought of that) but *something* in there did the trick.