Android Beam
Android Beam — это технология Near Field Communication (NFC), представленная в Android 4.0, которая позволяет приложениям совместно использовать информацию через NFC, если они находятся поблизости друг от друга.
Android Beam поддерживает передачу сообщений через NFC, если два устройства находятся в диапазоне действия. Устройства, которые находятся друг от друга на расстоянии 4 см, могут обмениваться данными с помощью Android Beam. Действие на одном устройстве создает сообщение и указывает действие (или действия), которое может выполнять его принудительную отправку. Если указанное действие находится на переднем плане, а устройства находятся в диапазоне действия, Android Beam отправляет сообщение на второе устройство. На принимающем устройстве вызывается намерение, содержащее данные сообщения.
Android поддерживает два способа настройки сообщений с помощью Android Beam.
- SetNdefPushMessage — перед инициацией Android Beam приложение может вызвать SetNdefPushMessage, чтобы указать NdefMessage выполнять отправку через NFC, и действие, которое отправляет его. Этот механизм лучше использовать, если сообщение не изменяется во время использования приложения.
- SetNdefPushMessageCallback — когда Android Beam инициируется, приложение может реализовать обратный вызов для создания NdefMessage. Этот механизм позволяет отложить создание сообщений, пока устройства не будут находиться в диапазоне действия. Он поддерживает сценарии, в которых сообщение может изменяться в зависимости от того, что происходит в приложении.
В любом случае, чтобы отправлять данные с помощью Android Beam, приложение отправляет NdefMessage , упаковывая данные в несколько NdefRecords . Рассмотрим ключевые моменты, которые необходимо устранить, прежде чем активировать Android Beam. Во первых, мы будем работать со стилем обратного вызова создания NdefMessage .
Создание сообщения
Обратные вызовы можно зарегистрировать с помощью NfcAdapter в методе OnCreate действия. Например, если NfcAdapter с именем mNfcAdapter объявляется в действии как переменная класса, для создания обратного вызова можно написать следующий код, который будет формировать сообщение:
mNfcAdapter = NfcAdapter.GetDefaultAdapter (this); mNfcAdapter.SetNdefPushMessageCallback (this, this);
Действие, которое реализует NfcAdapter.ICreateNdefMessageCallback , передается методу SetNdefPushMessageCallback , предоставленному выше. При инициации Android Beam система вызывает команду CreateNdefMessage , из которой действие может создать NdefMessage , как показано ниже:
public NdefMessage CreateNdefMessage (NfcEvent evt) < DateTime time = DateTime.Now; var text = ("Beam me up!\n\n" + "Beam Time: " + time.ToString ("HH:mm:ss")); NdefMessage msg = new NdefMessage ( new NdefRecord[]< CreateMimeRecord ( "application/com.example.android.beam", Encoding.UTF8.GetBytes (text)) >); > >; return msg; > public NdefRecord CreateMimeRecord (String mimeType, byte [] payload)
Получение сообщения
На принимающей стороне система вызывает намерение с действием ActionNdefDiscovered , из которого NdefMessage можно извлечь следующим образом:
IParcelable [] rawMsgs = intent.GetParcelableArrayExtra (NfcAdapter.ExtraNdefMessages); NdefMessage msg = (NdefMessage) rawMsgs [0];
Полный пример кода, в котором используется Android Beam, показанный на снимке экрана ниже, см. в Коллекции образцов Xamarin.Android. Демонстрационная версия Android Beam.

Связанные ссылки
Android Beam — что это и как работает?
Что такое Android Beam, и как работает эта технология?
Многие современные телефоны обладают функцией Android Beam, основанной на технологии NFC. Она обеспечивает беспроводную отправку информации. Несмотря на то, что радиус передачи данных составляет несколько сантиметров, подключение выполняется практически мгновенно. Конкурентные технологии (например, Bluetooth), затрачивают на установку соединения примерно 5-10 секунд.
Как узнать, если ли в смартфоне Android Beam?
Прежде чем пользоваться беспроводной передачей малого радиуса действия, нужно проверить наличие соответствующей технологии на мобильном телефоне. Несмотря на то, что бесконтактные платежи крайне популярны и востребованы, производители современных смартфонов устанавливают модули NFC преимущественно в дорогие телефоны.
Для проверки наличия функции Android Beam необходимо открыть настройки смартфона и выбрать раздел «Передача данных». Затем нужно нажать кнопку «Еще» и убедиться в наличии пункта NFC. Он означает, что телефон поддерживает и Android Beam. Название разделов меню могут отличаться в зависимости от модели смартфона.

Как пользоваться Android Beam?
Чтобы пользоваться беспроводной передачей информации, необходимо наличие двух телефонов с поддержкой Android Beam. Также нужно включить NFC в настройках операционной системы. От самого пользователя не потребуется дополнительных манипуляций с параметрами телефона.
Технология Android Beam помогает передавать практически любую информацию. Можно поделиться географическими координатами, видео, страницей в интернете, музыкальными композициями или фотографиями. Основное достоинство функции заключается в простоте ее использования. Например, при необходимости передать фотографию нужно поднести телефон к другому мобильному устройству и подождать, пока на экране отобразится сообщение с предложением поделиться информацией. Остается нажать по кнопке подтверждения и дождаться отправки данных.

Особенности использования
Чтобы при использовании Android Beam не возникло затруднений, рекомендуется запомнить несколько правил. Главное требование — разблокированный и активный экран на двух смартфонах. Также необходимо соблюдать минимальное расстояние между корпусами устройств. Лучше всего приложить смартфоны задними крышками друг к другу. Таким образом, Android Beam позволит быстро делиться различными файлами всего за несколько секунд.
Рекомендуем почитать:
- Как проверить и узнать реальную емкость карты памяти?
- Почему не отправляются SMS с телефона и что делать?
- Как выбрать хороший робот-пылесос для квартиры?
- Почему телефон не подключается к Wi-Fi и что делать?
- Как включить режим сопряжения на Bluetooth-наушниках?
Android 14 удалит функцию Android Beam
Android Beam — это функция обмена NFC, добавленная в Android 4, которая позволяет двум устройствам Android с поддержкой NFC обмениваться файлами на близком расстоянии.
Согласно информации, в Android 14 следующего года будет полностью удалена функция Android Beam.
Сообщается, что разработка этой функции в Android 10 остановлена , но другим производителям Android, использующим AOSP, разрешено использовать ее. В новом Android 14 эта функция будет полностью удалена из AOSP, а это значит, что другие производители Android не смогут ее использовать.
@GADGETSMIR стало известно, что Google запустила функцию Nearby Share для устройств Google Mobile Services (GMS) Android, которая недоступна на устройствах Android, не поддерживающих GMS
Android Beam
Android Beam – это специальная технология, позволяющая делиться данными между двумя устройствами. Как известно, многие современные телефоны оснащаются модулем NFC, который предназначен для передачи информации на небольшом расстоянии. Разработчики расширили возможности данного чипа, позволив пользователям делиться определенными данными. Например, можно отправить фотографию с одного смартфона на другой полностью без проводов и интернета. Для этого достаточно поднести телефоны друг к другу и разблокировать экран.
Чтобы проверить, поддерживает ли смартфон Android Beam необходимо проследовать по следующему пути: «Настройки» → «Подключение устройства» → «NFC». То есть если в телефоне есть модуль NFC, то и нужная технология будет работать. Найти применение подобной опции довольно трудно, так как практически вся информация передается посредством Wi-Fi. Однако для быстрой пересылки небольших файлов использовать Android Beam очень удобно.
