Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   p2p Между разными приложениями (http://www.flasher.ru/forum/showthread.php?t=200885)

Smitg9 09.06.2013 01:50

p2p Между разными приложениями
 
Всё началось с того, что у меня возникла идея научить телефон управлять flash игрой на компе.
Сначала думал о создании сервера, но потом вспомнил о p2p. Посмотрел пару уроков, вроде разобрался что к чему. Для теста сделал чат и всё работало нормально. Но когда я приступил к реализации своей задачи то-ли post(ы) от NetGroup перестали отправляться, то-ли NetGroup.Posting.Notify перестал принимать сообщения (хотя всё делал абсолютно так-же как с чатом). И тут у меня появилась мысль, что 2 разных приложения не могут обмениваться сообщениями. Собственно вопрос: верна ли моя догадка?

djyamato 09.06.2013 03:09

Вы отсылаете сообщение в группу, ей без раницы разные это приложения или одинаковые.
Обратите внимание на параметр группы group specifier with (without) authorization

Smitg9 09.06.2013 14:11

Цитата:

Сообщение от djyamato (Сообщение 1137134)
Обратите внимание на параметр группы group specifier with (without) authorization

у меня
_netGroup = new NetGroup(_netConnection, gs.groupspecWithAuthorizations());

--------------------------
UPD:
Очень странно... между 2мя андроидами (и даже между андроидом и эмулятором на компе) всё отлично работает, а вот между андроидом и свф-кой ничего не происходит...

---------------------------
UPD:
Так же всё отлично работает между AIRом на компе и приложением на телефоне. Но хотелось бы установить связь именно между swf и телефоном. Возможно ли это?

Smitg9 09.06.2013 21:17

Цитата:

Сообщение от okouser (Сообщение 1137247)
Дело в вашем коде.

Вряд ли проблема в коде, т.к. когда я одновременно открываю 2 окна с FP и 2 окна с AIR версиями программы и пишу что-то в чат с FP то во второй FP приходит сообщение, а в AIR нет. когда пишу сообщение в AIR версии программы то всё аналогично с точностью до наоборот.

C4Grey 09.06.2013 22:27

Вот здесь описана похожая проблема: http://forums.adobe.com/message/5229848 . Если правильно понял, до AIR 3.5 эта проблема не проявлялась.

Smitg9 09.06.2013 23:06

проблема не похожая, а абсолютно идентичная я бы сказал)) попробую скачать AIR 3.4, вдруг поможет...)
и что-бы не создавать новую тему спрошу тут (всё-равно по p2p вопрос).
Из контекста вашей ссылки я понял, что можно создать локальное соединение без доступа к интернет?
"the original app (the "player") started listening at both local network ("rtmfp:") and with the aid of the Cirrus service ("rtmfp://p2p.rtmfp.net/mycirruskey")"
Попробовал заменить
Код AS3:

_netConnection.connect(SERVER+DEVKEY);

на
Код AS3:

_netConnection.connect("rtmfp:");

нетГруппа конектится
нетСтрим конектится
NetConnection тоже
но перестало приходить событие "NetGroup.Posting.Notify" (отвечающее за прием сообщений)

C4Grey 09.06.2013 23:55

Скорее всего, ответ можной найти здесь: http://blog.leeburrows.com/2011/10/p...network-part1/
Если конкретнее:
Код AS3:

private function setupGroup():void
{
        //create a GroupSpecifier object
        var groupspec:GroupSpecifier = new GroupSpecifier("myGroup");
        //enable posting (to entire group)
        groupspec.postingEnabled = true;
        //allow data to be exchanged on IP multicast sockets
        groupspec.ipMulticastMemberUpdatesEnabled = true;
        //set the IP adress and port to use
        groupspec.addIPMulticastAddress("225.225.0.1:30000");
        //create NetGroup with our NetConnection using GroupSpecifier details
        group = new NetGroup(netConn, groupspec.groupspecWithAuthorizations());
        //listen for result of setup
        group.addEventListener(NetStatusEvent.NET_STATUS, netHandler);
}

И дальше слушаем события уже экземпляра GroupSpecifier:
Код AS3:

...
case "NetGroup.Neighbor.Connect":
    var peer:Object = new Object();
    peer.id = event.info.peerID.toString();
    peer.label = truncateString(event.info.peerID);
    peerList.addItem(peer);
    break;
...


Smitg9 10.06.2013 00:12

спасибо всем за ответы.
кстати, установка AIR 3.4 устранила проблему, теперь телефон может общаться с swf =)


Часовой пояс GMT +4, время: 02:07.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.