Это может стать большой новостью, если достаточное количество программистов отнесутся к этому серьезно и придумают творческое использование и приложения-убийцы. Nearby Connections 2.0 обеспечивает полностью автономную работу в сети через Wi-Fi, Bluetooth BLE и классический, и вопрос только в том, что делать с этой захватывающей функцией?
Кажется, что у Weather Channel правильная идея. Он планирует создать сеть по запросу, чтобы восполнить дефицит средств связи для распространения метеорологических предупреждений. Hotstar планирует позволить людям обмениваться мультимедийными данными, когда нет подключения к Интернету. GameInsight и Google, с другой стороны, похоже, планируют довольно невообразимые способы использования — для поиска ближайших игроков и пульта дистанционного управления для Android TV.
Google, похоже, думает, что эта функция больше касается локализации и взаимодействия с устройствами, а не чего-то более интересного — мы уже можем делать и то, и другое через Wi-Fi.
Когда вы понимаете, что у вас есть API-интерфейс, подобный сокету, который защитит вас от сложности различных радиоподсистем телефона. Вы можете построить звездообразную или кластерную сеть для связи от 1 к N или от M к N и использовать любые доступные радиопротоколы:
Функция Nearby Connections использует Wi-Fi, Bluetooth LE и классический Bluetooth под капотом для обнаружения и установления соединения с ближайшими устройствами. Он абстрагирует присущую этим радиостанциям сложность, используя сильные стороны каждого, избегая при этом их соответствующих слабых сторон. Помимо очевидного преимущества избавления от боли, связанной с причудами этих радиомодулей в разных версиях ОС и на разных устройствах, эта абстракция позволяет плавно увеличивать пропускную способность соединения, переключаясь между радиомодулями, когда это имеет смысл, а также невидимые беспроводные обновления для использования новых радиотехнологий по мере их появления — без каких-либо изменений в коде приложения.
Существует вызов API для обнаружения ближайших устройств и объявления о доступности ваших устройств. Предыдущая версия API требовала общего Wi-Fi-соединения с многоадресной рассылкой, чтобы обнаружение и соединение работало, и если подумать, это делает всю идею сети с ближайшим подключением довольно избыточной. Новая система позволяет устанавливать сетевые соединения между устройствами. даже когда нет интернета. Хотя это «ближнее» подключение, устройства могут находиться на расстоянии до 100 м друг от друга.
После установления соединения вы можете передавать байты, файлы или потоки данных. Байтовые данные могут достигать 32 Кбайт в одной транзакции, но файловые и потоковые транзакции не ограничены. Вы можете использовать шифрование, чтобы только конечная точка назначения могла читать данные.
Вы можете использовать API с любым устройством, на котором есть Службы Google Play 11. Стоит отметить, что снова, возможно, важная часть операционной системы Android поддерживается Play и, следовательно, на 100% находится под контролем Google. За использование новой службы плата не взимается, но она может появиться в будущем, хотя, учитывая, что она работает в автономном режиме, серверы Google не задействованы.
Обратите внимание, что это не настоящая ячеистая сеть, поскольку связь осуществляется по схеме «точка-точка» и отсутствует маршрутизация. С добавлением маршрутизации сеть может быть намного больше 100 м, поскольку соединения могут проходить через промежуточные узлы. Возможности для соседней ячеистой сети намного больше. Можно ли это добавить на уровне приложения?