Как я могу отправить файл по беспроводной сети без Bluetooth или сети Wi-Fi в ICS?

24

Я знаю, что одной из новых функций является WiFi-direct для ICS (отмечено в самом низу страницы в ссылке). Есть ли способ использовать эту новую функцию для передачи файлов с одного устройства ICS на другое?

Это было бы полезно, потому что скорость WiFi была бы выше, чем у Bluetooth, и вам не нужно было бы подключаться к сети Wi-Fi или создавать точку доступа.

Samsung Galaxy S II, очевидно, имеет эту функцию, встроенную в pre-ICS (иди в Samsung!). Этот же метод доступен в ICS? Или есть приложение для этого?

РЕДАКТИРОВАТЬ: Поскольку Galaxy Galaxy Nexus сделан Samsung и является единственным устройством с ICS на данный момент, я не уверен, что этот общий доступ "WiFi Direct" (по ссылке и ответу Райана ниже) встроен в ICS vanilla ( В конце концов, у Samsung действительно был предварительный доступ к Wi-Fi.

Поэтому я добавил ванильный тег, поэтому я спрашиваю, есть ли в исходном коде ванили возможность для пользователей обмениваться файлами с помощью WiFi Direct? Если нет, есть ли приложение для него на рынке? Я хочу знать, как это сделать на всех телефонах ICS, а не только на Galaxy Nexus.

Джон
источник

Ответы:

23

Android 4.0 представляет WiFi Direct в ядре Android. он в основном создает временное соединение между одним устройством и другим с помощью Wi-Fi, создавая то, что, я думаю, можно считать точкой доступа. Вам не нужна точка доступа Wi-Fi, чтобы использовать WiFi Direct, и на самом деле, если вы подключены к Wi-Fi при включении WiFi Direct, он отключит вас. Вы не можете подключиться к точке доступа и включить Wi-Fi Direct.

Хост-устройство действует как точка доступа, к которой другие устройства могут подключаться, а затем через другие части программного обеспечения файлы и другие данные могут быть переданы или переданы на клиентское устройство (устройства).

Чтобы использовать Wifi Direct, settings -> wireless & networksвы должны включить его. Тогда вы должны иметь возможность «поделиться» через Wi-Fi. Это очень похоже на совместное использование Bluetooth, когда другое устройство должно быть «готово» принять ваши файлы. Вы сможете использовать Wi-Fi Direct только на устройствах, которые имеют явную поддержку Wi-Fi Direct. Android 4.0 является первой версией ОС, которая имеет встроенную поддержку Wi-Fi Direct. Samsung Galaxy S II также поддерживает Wi-Fi Direct. Это была дополнительная функция, которую Samsung добавила в свою версию Android для TouchWiz. Хотя настройки для него немного отличаются от Android 4.0, они в основном работают одинаково.

Есть другие устройства, такие как некоторые телевизоры Sony, которые также имеют прямую поддержку Wi-Fi.

Wifi Direct не зависит от аппаратного обеспечения, это часть ОС. Если устройство поддерживает Wi-Fi, то оно поддерживает это. Это часть ОС CORE в Android 4.0. С любым устройством, которое имеет Wi-Fi и работает ICS, это будет работать. Некоторые устройства Samsung (я думаю, что только Galaxy S 2) имеют поддержку Wi-Fi Direct, хотя они не работают под управлением ICS. Это связано с тем, что Samsung добавила поддержку этого в свою версию Android.

Хотя Galaxy Nexus производится Samsung, он не работает под управлением модифицированной версии Samsung для Android. Он работает полностью "Google Experience" версия Android. Прямой WiFi, который существует на Samsung Galaxy S II, отличается от встроенного в Android 4.0.

Вот андроид SDK документы, которые говорят о поддержке.

Wi-Fi Direct позволяет устройствам Android 4.0 (уровень API 14) или более поздней версии с соответствующим оборудованием подключаться друг к другу напрямую через Wi-Fi без промежуточной точки доступа. Используя эти API, вы можете обнаруживать и подключаться к другим устройствам, когда каждое устройство поддерживает Wi-Fi Direct, а затем обмениваться данными по быстрому соединению на расстояниях, намного превышающих соединение Bluetooth. Это полезно для приложений, которые обмениваются данными между пользователями, таких как многопользовательская игра или приложение для обмена фотографиями.

Вот снимок экрана (взятый из этого видео ), показывающий настройку Wi-Fi, доступную на Nook Color с CM9. Видео находится в том месте, где он показывает Wi-Fi прямой работы. цветной уголок / cm9 / wifi direct

еще один выстрел

Вот 2 скриншота с моего g-планшета viewsonic, работающего под управлением ICS (это не CM9 Kang, а ванильный AOSP android). Первый показывает настройку, второй показывает, что я его включил. введите описание изображения здесь введите описание изображения здесь

Чтобы показать, что WiFi Direct на самом деле является частью ядра Android, а не только CM9, вот исходный код настроек WiFi direct . Это github зеркало AOSP. Вы можете сравнить его с источником CM9 тоже.

Райан Конрад
источник
Просто один на один - я отредактировал вопрос, чтобы напрямую спросить, как передавать файлы с помощью Wi-Fi Direct.
Мэтью Прочитал
1
Я скорректировал свой ответ, чтобы, надеюсь, объяснить, как использовать Wi-Fi Direct.
Райан Конрад
1
Я не могу найти ничего похожего на "Wifi Direct" в настройках -> беспроводные сети.
offby1
4
мой планшет не работает CM9, он работает под управлением Android VANILLA AOSP. Но вот цианогенный код, а вот код андроида . Они одинаковые.
Райан Конрад
2
@RyanConrad у вас есть ссылка на то, что WiFi Direct не зависит от аппаратного обеспечения? В Nexus S под управлением Vanilla ICS эта функция не включена. Motorola Xoom на ванильной ICS также не имеет этой функции. Код может быть там, но я почти уверен, что есть какая-то аппаратная зависимость, иначе все устройства ICS будут иметь ее.
Давидбб
3

На рынке Android появилось новое приложение под названием FileBeam, которое позволяет передавать файлы Beam DropBox с Android на Android. Может быть, это тоже может вам помочь;) https://play.google.com/store/apps/details?id=com.filebeamapp.android

Ева Чжэн
источник
2
Ссылка в конце концов мертва. Обновление требуется здесь.
Повелитель огня
1

В исходном коде есть ссылка на функцию, но с другим именем: WifiP2P. Просто сделал поиск в GrepCode и нашел пакет android.net.wiki.p2p .

Сам Wifi Direct находится в com.example.android.wifidirect , поэтому я не думаю, что он обязательно включен в ванильные ОС, это всего лишь пример того, как использовать Wifi P2P API. Кто-то с большим опытом в Android-источнике может знать лучше.

Оник
источник
это входит в ванильный андроид. Я установил ICS на моем видеозвуковом планшете и попробовал его с другом, у которого есть связь галактики. То, как вы опубликовали wifidirect, - это пример кода о том, как другие приложения могут интегрироваться с протоколом для запуска намерений, являющихся частью ОС.
Райан Конрад
-3

Для пользователей Samsung G-Note (возможно, также пользователей SII и SIII) перейдите в «Настройки», затем в разделе «Беспроводные сети и сети» выберите «Подробнее ...», и вы увидите там вариант.

RobC
источник
Речь идет о стандартной ICS, и дело не в том, можно ли включить WiFi-Direct, а в том, можно ли использовать его для обмена файлами.
Рагд Хамзех