Можно ли передавать данные NFC с одного устройства Android на другое без экрана "Touch to Beam"?
Я пытаюсь отправить данные NFC с одного устройства Android на другое. Я смог сделать это успешно, используя функцию "Touch to Beam". Но я бы хотел, чтобы передача данных происходила автоматически, как только оба устройства будут вместе.
Я видел ответ на этот вопрос в Stackru несколько раз. К сожалению, в то время как некоторые говорят, что невозможно отправить данные NFC с одного устройства Android на другое, некоторые другие предлагают попробовать "диспетчеризацию переднего плана" (что, согласно официальным документам, в настоящее время не рекомендуется). Я не был успешен с "отправкой на передний план", хотя я не совсем уверен, если это из-за моей ошибки. Почти на все вопросы был дан ответ 1 год назад, поэтому мне было интересно, изменил ли Google что-то для этого. Оба моих устройства на Android 4.0 или более поздней версии, но не 4.4.
1 ответ
При использовании одноранговой связи NFC (Android Beam) между двумя устройствами Android (4.0+) невозможно избежать пользовательского интерфейса Beam. Поэтому невозможно передать данные без "Touch to Beam".
До Android Beam (фактически Android 2.3.3-2.3.7) это было возможно с помощью NDEF push переднего плана (который теперь (a) устарел и (b) в Android 4.0+ реализован через Beam). В этом случае сообщения NDEF немедленно передаются без окна "Push to Beam".
Только начиная с Android 4.4 существует возможность обмена данными между двумя устройствами Android через NFC без интерфейса Beam (фактически без использования Android Beam и однорангового режима вообще): если оба устройства поддерживают 4.4+, одно устройство может использовать Android HCE для эмуляции бесконтактной смарт-карты и одного устройства может использовать API режима чтения (это работает только с API режима чтения, представленным в 4.4, поэтому оба устройства должны иметь версию 4.4+) для связи с эмулированной смарт-картой.