Как быстро 2 айфона могут обмениваться информацией о наклоне/положении?

Мне было интересно, сколько времени требуется, чтобы передать информацию о наклоне и положении (не gps) одного конкретного iphone другому. Могут ли 2 iphone отправлять и получать эту информацию одновременно? А 3 айфона? Меня интересует приложение, которое может одновременно отправлять и получать и принимать условные решения на основе этой информации, полученной всего за полсекунды.

Любой выстрел это возможно? Если да, то лучше блютуз или вайфай?

Большое спасибо, Джейк


person Community    schedule 30.04.2009    source источник
comment
У меня нет никакого ответа на ваш вопрос, но первое, что пришло в голову при чтении, было: световой меч iPhone.   -  person VirtuosiMedia    schedule 10.12.2009


Ответы (3)


В настоящее время это невозможно без промежуточного сервера. (Без джейлбрейка, что было бы возможно, но крайне сложно)

Я предполагаю, что ваша цель - игры, и в этом случае задержка, связанная с поездкой на сервер и обратно по сотовой сети передачи данных, вероятно, займет слишком много времени для любого удовлетворительного игрового процесса. Я не верю, что это произойдет в течение полсекунды.

Это будет возможно через Bluetooth в будущем программном обеспечении для iPhone 3.0, но это все еще находится под соглашением о неразглашении, поэтому вы вряд ли сможете получить какие-либо надежные показатели производительности, пока оно не будет выпущено. Если бы я предположил, я бы, конечно, предположил, что задержка, связанная с прямым Bluetooth-соединением, будет НАМНОГО меньше половины секунды.

person mmc    schedule 30.04.2009
comment
Отличный ответ. С нетерпением жду ОС3. На самом деле я хочу разработать приложение, которое не совсем игровое. Вы правы в том, что передача информации о местоположении по сети/серверу определенно займет слишком много времени, чтобы эта концепция заработала. В текущей ОС нет ничего, что позволяло бы напрямую общаться по телефону через Bluetooth без джейлбрейка? Еще раз спасибо! - person ; 30.04.2009

Все, что у вас есть сейчас, это Wi-Fi или сотовая сеть. Если вы используете Bonjour через Wi-Fi, у вас будут задержки в миллисекундах, но все телефоны должны быть подключены к одной и той же точке доступа. Взгляните на пример WiTap.

person Mark Bessey    schedule 30.04.2009
comment
Потрясающий. Спасибо за отзыв! - person ; 30.04.2009

Это определенно возможно, вы захотите подключить своих пиров через WiFi для лучшей производительности и надежности, но Bluetooth будет в порядке, если ваши пакеты данных будут ограничены небольшими размерами (‹ 1 КБ). Ознакомьтесь с этой документацией и примером кода, чтобы узнать, как получить доступ к UIAccelerometer:

http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIAccelerometer_Class/Reference/UIAccelerometer.html

http://developer.apple.com/iphone/library/samplecode/AccelerometerGraph/index.html#//apple_ref/doc/uid/DTS40007410

Хитрость заключается в том, что частота обновления частично контролируется потребностями системы, поэтому может быть окно (пока система пытается обновить ориентацию устройства), в котором ваше приложение не получает обновлений.

person ImHuntingWabbits    schedule 15.01.2010