Connectivity resilience

How do you send a file between two phones without internet?

You send a file between two nearby phones without internet over a direct radio link. Between iPhones, AirDrop finds the other phone over Bluetooth LE and sends the file over Apple's peer-to-peer Wi-Fi, with no access point or internet. Between Android phones, Quick Share does the same job. Between an iPhone and an Android phone, Google's Quick Share can send to AirDrop directly on supported Android models when the iPhone's AirDrop is set to Everyone for 10 Minutes; on other models its QR code option uploads to Google's servers and needs internet on both phones.

TL;DR

To share a file by hand, use AirDrop between Apple devices, Quick Share between Android devices, and Quick Share's AirDrop support for iPhone to Android where the Android model has it. An app that moves files between any two phones needs its own transfer, usually Bluetooth LE for reach and Wi-Fi for speed, with chunks, acknowledgments and a final checksum.

Learning objectives

After reading this article you will be able to:

  • Choose the built-in way to send a file for each pair of phones, including iPhone to Android
  • Explain why an iPhone cannot send a file to an Android phone over classic Bluetooth
  • Describe how an app moves a large file directly between two phones and keeps the transfer reliable

File sharing options by phone pair

The built-in file sharing tool depends on which two phones are involved. Apple and Google each ship a direct sharing feature for their own platform, and the iPhone to Android case depends on the Android model.

PhonesBuilt-in wayInternet needed?What to know
iPhone to iPhoneAirDropNoBoth phones need Wi-Fi and Bluetooth turned on
Android to AndroidQuick ShareCan use mobile data; a Quick Share setting controls itAndroid 6 and later, Bluetooth on for both phones
Android to iPhone, supported Android modelsQuick Share to AirDropNoiPhone’s AirDrop set to Everyone for 10 Minutes
Android to iPhone, other Android modelsQuick Share QR codeYes, on both phonesFiles are uploaded to Google’s servers and kept for 24 hours
iPhone to Android over classic BluetoothNoneiPhone does not support a Bluetooth file transfer profile

Within an app, the picture is different: the app has to carry the file itself over a link both phones offer, which the later sections cover.

AirDrop without internet

AirDrop does not need internet. Apple’s platform security guide says AirDrop uses Bluetooth LE to find nearby devices and Apple’s peer-to-peer Wi-Fi to send the file, communicating directly between the devices without any internet connection or wireless access point. The connection is encrypted with TLS.

Apple’s support page asks for both phones to be nearby with Wi-Fi and Bluetooth turned on. Those switches turn on the radios; they do not need to be joined to a network. Receiving from someone outside your contacts uses the Everyone for 10 Minutes setting, which in iOS 16.2 and later reverts to Contacts Only after ten minutes when you are signed in to an Apple Account.

iPhone to Android file transfer without internet

An iPhone can send a file to an Android phone without internet when the Android phone supports Quick Share with AirDrop. Google announced on 20 November 2025 that Quick Share works with AirDrop, in both directions, starting with the Pixel 10 family, and said the connection is direct and peer-to-peer, so data is never routed through a server. Google’s help page now lists Pixel 8a and later and certain Samsung, Oppo, OnePlus, Vivo, Xiaomi, Honor, Transsion and Motorola devices. The Apple device has to set AirDrop to Everyone for 10 Minutes.

On Android phones without that support, Quick Share offers a QR code option for Apple devices. It is not a direct link: Google says the files are end-to-end encrypted and uploaded to Google’s servers, both devices need internet access, and the content is available to download for 24 hours. Google also caps sharing to Apple devices at 10 GB every 24 hours and 1,000 files per session.

Bluetooth file transfer from iPhone to Android

An iPhone cannot send a file to an Android phone through the built-in Bluetooth settings. Apple’s list of Bluetooth profiles that iOS supports covers hands-free calling, audio, phone book and message access, networking and input devices, and it has no object push or file transfer profile. Android phones can exchange files with each other through their own sharing features, but an iPhone will not appear as a Bluetooth file target.

What does work is an app on each phone that speaks the same protocol over Bluetooth LE, because both iOS and Android let apps advertise, scan and connect over BLE. Can an iPhone and an Android phone connect directly without internet? explains which links the two platforms share.

In-app direct file transfer frameworks

An app picks a direct link the two phones share and moves the file over it as a series of pieces. Each platform offers a framework for its own devices, and fewer options cross between them.

  • Nearby Connections (Google). Apps advertise, discover and connect, then send payloads of three kinds: bytes, limited to 32k and meant for metadata or control messages; files of any size; and streams. Google says it combines Bluetooth, BLE and Wi-Fi and works fully offline. For one large file, Google recommends the P2P_POINT_TO_POINT strategy, a one-to-one connection with the highest throughput.
  • Multipeer Connectivity (Apple). Apple’s framework sends messages, streams and resources such as files between Apple devices. On iOS it uses infrastructure Wi-Fi, peer-to-peer Wi-Fi and Bluetooth. It does not run on Android.
  • Wi-Fi Direct (Android). Android’s Wi-Fi P2P API connects devices directly over Wi-Fi without an access point, at higher speed and longer range than Bluetooth. An app opens its own socket over the link and sends the file.
  • Wi-Fi Aware. A Wi-Fi Alliance standard with frameworks on Android and, since iOS 26, on iPhone, where Apple describes high-bandwidth, encrypted peer-to-peer connections between paired devices. How does Wi-Fi Aware work? covers pairing and support.
  • Bluetooth LE. The one link both platforms open to apps on any recent phone. It works for iPhone to Android, but it is the slowest of these options.

Bluetooth LE speed for large files

Bluetooth LE is slow for large files because each write carries only a small piece of data, and phones add connection intervals and platform limits on top of the radio’s bit rate. Real throughput on phones is far below the headline 1 or 2 Mb/s, as what throughput BLE gets in practice explains. A photo moves acceptably; a long video can take a long time.

That is why cross-platform apps often start over Bluetooth LE and move to a Wi-Fi link when both phones support one, the same pattern AirDrop uses inside Apple’s own devices: Bluetooth LE to find the other device, Wi-Fi to move the bytes.

Reliable in-app file transfer

A reliable in-app transfer rests on chunks, acknowledgments, resume and a final checksum. The sender splits the file into numbered pieces sized for the link, the receiver confirms each one, only missing pieces are resent after a break, and the receiver checks the reassembled file against a checksum of the original before saving it. How do large files move across a mesh? goes through each step.

Three practical rules follow:

  • Keep the original until the receiver confirms it. A sender that deletes its copy cannot resend the missing pieces.
  • Show progress per piece. People cancel transfers that look frozen.
  • Fail clearly. When the phones move apart, report that the transfer stopped and offer to resume it, instead of leaving a half-written file.

Offline Protocol file transfer

Offline Protocol is an SDK for apps, not a sharing feature for people, so it fits when your app needs to send files to other phones on its own. In React Native, sendFileFromPath, added in 0.30.0, takes a file path and the recipient’s address. The SDK’s Rust core reads the file itself, so a large file no longer crosses the JavaScript bridge as a base64 string, and the 0.30.0 changelog says a missing file, anything that is not a regular file, or a file over the 100 MiB transfer limit is refused before a byte is read. The read is whole-file into memory, not streamed.

In the v0.31.0 source, each transfer is pinned to one carrier when it starts: the current one if it can reach the recipient, otherwise the internet relay, a Wi-Fi peer stream already open to that phone, or Bluetooth LE. Chunks are 4 KiB over Bluetooth LE, 32 KiB over a Wi-Fi peer stream and 256 KiB over the internet, each chunk is acknowledged, and with encryption on the chunks travel inside the MLS session the two phones already share. Between an iPhone and an Android phone, the SDK’s Wi-Fi peer stream works only on a shared Wi-Fi network that allows multicast, so with no network the transfer runs over Bluetooth LE. Chunks are not saved across a restart: an interrupted transfer comes back as a media_resend_required event asking the app to supply the file again.

Frequently asked questions

Does AirDrop use mobile data?

No. Apple's platform security guide says AirDrop finds nearby devices over Bluetooth LE and then sends the file over Apple's peer-to-peer Wi-Fi, directly between the devices, without an internet connection or a Wi-Fi access point.

Can I AirDrop to a Samsung phone?

On some models. Google lists Pixel 8a and later and certain Samsung, Oppo, OnePlus, Vivo, Xiaomi, Honor, Transsion and Motorola devices as able to share with AirDrop through Quick Share, with the Apple device's AirDrop set to Everyone for 10 Minutes.

Why does the Quick Share QR code option need internet?

Because it does not connect the phones directly. Google says files shared that way are end-to-end encrypted and uploaded to Google's servers, both devices need internet access, and the content stays available to download for 24 hours.

Is there a size limit when sharing from Android to an iPhone?

Google states that you can share up to 10 GB of files to an iPhone, iPad or Mac every 24 hours, and up to 1,000 files in one share session.

Which Nearby Connections strategy is best for sending one large file?

P2P_POINT_TO_POINT. Google describes it as a one-to-one connection with the highest throughput of the three strategies and recommends it for sharing a large video to another device.

Does Offline Protocol stream a file from disk?

No. In 0.31.0, sendFileFromPath has the Rust core read the whole file into memory and chunk it there, which avoids passing a large base64 string across the React Native bridge but is not streaming. Files over the 100 MiB transfer limit are refused before any byte is read.

Sources

Build it with Offline Protocol

The files and media reference lists the Offline Protocol methods for sending a file to another device, following its progress and cancelling it. sendFileFromPath, which reads the file from disk instead of taking base64, arrived in React Native in 0.30.0.

Read the files and media reference