Возможно ли в принципе для Android-устройства взаимодействовать с iPhone через Bluetooth/GameKit?
(Меня не интересует чистая теория, но как практическая ближайшая или среднесрочная возможность, скажем, в течение 12-24 месяцев.)
Как разработчик, знакомый с (но не специализирующимся) на двух основных платформах смартфонов, должен ли я ожидать появления библиотеки Android, которая может обмануть себя в iPhone на базе GameKit. Кажется разумным, что интерфейс Bluetooth между платформами может создать возможности для создания полезных приложений, так же как модемы использовали платформы ПК /Mac через закон Меткалфа.
Я ищу один из двух ответов:
-
Возможно, это маловероятно (например, из-за шифрования)? Если да, в чем причина? Возможно ли в принципе, но требуются годы обратной инженерии (например, SMB/CIFS/Samba)? Или это нелегко и просто вопрос времени? Просьба привести доказательства, подтверждающие вашу причину.
-
Есть ли альтернативный способ иметь прямую одноранговую сеть помимо GameKit? Например, ручная сеть с использованием Bluetooth или ad-hoc WiFi? Было бы неплохо подделать Android-устройство в существующее приложение для iPhone, но мой главный вопрос заключается в том, могут ли устройства разговаривать друг с другом вообще!
Ответы
Ответ 1
Да, это возможно. GameKit - это протокол, использующий TCP и/или UDP через соединение BNEP Bluetooth. Он также использует трюк для идентификации других устройств iOS с использованием механизма расширенного запроса в Bluetooth 2.1+.
Я смог смоделировать ответы EIR, теперь кому-то нужно перепроектировать протокол GameKit. Это не требует Bluetooth, так как он также используется для соединений GameKit через WLAN.
Если кто-то может повторно подключить GameKit для соединений WLAN, я могу закончить версию Bluetooth.
Ответ 2
Нет, и это не скоро или даже совсем... Apple гордится своими функциями безопасности, а соединения Bluetooth могут получить доступ к личным данным. Вероятно, не будет какой-либо кроссплатформенной платформы bluetooth, пока что-то не будет согласовано обеими компаниями.
Bump, как сказал предыдущий ответчик, использует удаленный сервер, а данные передаются не через BT.
Ответ 3
GameKit - Bonjour, поэтому Bonjour (который находится на IP) через Bluetooth на Android должен работать.
Ответ 4
Это должно быть возможно, поскольку Bluetooth способен настраивать сети tcp/ip. Хотя я вообще не знаю IPhone SDK, но у Android есть BluetoothSocket и BluetoothServerSocket для TCP-соединений.
Ответ 5
Эта статья, http://blog.moritzhaarmann.de/blog/2014/04/27/sorry-state-of-p2p/, написанная в 2014 году, предлагает ее можно через Bluetooth LE. Доступно в Android 4.3 + и iOS6 +
Два вопроса:
Ответ 6
Bounjour на iPhone дает вам полный доступ ко всем протоколам Bluetooth, поэтому вам не нужно использовать GameKit. Что касается того, когда кто-то предоставит простой в использовании iPhone для Android GameKit, такой как фреймворк - трудно сказать.
iPhone уже может разговаривать с любым другим устройством Bluetooth, использующим Bonjour сегодня.
-t
Ответ 7
Это абсолютно возможно! На самом деле я поражен тем, что больше людей этого не сделали!
Теория:
Bluetooth - это просто беспроводный сокет, который вы перемещаете данными, и он встречается с другой стороной, точно так же, как tcp/ip.
Практика:
http://www.techcrunch.com/2009/11/11/bump-goes-cross-platform-with-new-android-app-upgrades-iphone-version-too/
Еще лучше, Bump - кросс-платформенный, что означает, что вы можете столкнуться с телефоном Android с iPhone, и он должен работать без проблем.