|
Модераторы: javastic, AntonSaburov |
|
W0LF |
|
||||
alexander lonsky Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
я так понял, что телефон может быть сервером, кто-нидь скажет, операторы России, Украины держат эту штуку? Там просто нужен hostname, правда есть такой метод, как getLocalAddress() у интерфейса ServerSocketConnection, но он может возвращать 0.0.0.0...
Никто не сталкивался? вот для примера( может кто скажет, как энто превратить в рабочий вариант?): SocketConnection Interface
ServerSocketConnection Interface
Заранее спасибо Это сообщение отредактировал(а) W0LF - 13.4.2006, 09:48 -------------------- iOS developer |
||||
|
|||||
W0LF |
|
|||
alexander lonsky Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
Все, я разобрался.Если кому надо, то в WTK22 есть пример...
Кстати пробовал с Life на Jeans и обратно - работает, ток там плавающие ip, их мона каждый раз отправлять с помощью WMA, но не все телефоны держат WMA... -------------------- iOS developer |
|||
|
||||
DEMOVERSION |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 105 Регистрация: 18.10.2005 Репутация: нет Всего: 1 |
А можно пример и вообще что делает прога?
|
|||
|
||||
Dancer |
|
|||
Опытный Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
В принципе - можно поднять сервер в тырнете, у которого будет определённый адрес, ну например: http://www.my_mobile_SSocket_switcher.ru
На этом серваке ведёшь что-то он-лайн логирования, а точнее: если кто-то захотел стать серверо, то должен прислать определённое сообщение, о том, что я такой-то такой-то (MIDlet) стал сервером и имею вот такое вот IP. Приложение, которому нужен данный (Server-MIDlet) идёт по адресуhttp://www.my_mobile_SSocket_switcher.ru и смотрит, есть ли сейчас активные Server-MIDlet если да, то выбирает из списка нужный ему, ну или первый из списка и т.д. (думаю идея понятна) Но если у нас телефон поддерживает возможность работы с HTTP из мидлета, то JSR-120 он точно может поддерживать Хотя мой вариант имеет право на жизнь и вполне очень универсален. (ИМХО) -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
W0LF |
|
|||
alexander lonsky Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
Прога - просто шашки по сети. -------------------- iOS developer |
|||
|
||||
DEMOVERSION |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 105 Регистрация: 18.10.2005 Репутация: нет Всего: 1 |
я не понял, клиент коннектиться к веб-серверу или мобильнику напрямую?
если второй вариант то как? |
|||
|
||||
javastic |
|
|||
Эксперт Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: 19 Всего: 27 |
А я бы сделал через веб-сервер и всё было бы ГУД.
-------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
|||
|
||||
W0LF |
|
|||
alexander lonsky Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
К мобильнику напрямую!
а пример вот : http://forum.vingrad.ru/index.php?showtopi...st&p=701283 Там в SocketConnection Interface hostname = ServerSocketConnection.getLocalAddress(); то есть на сервере нужно взять LocalAddress(getLocalAddress()) ибо он плавающий, и передать клиенту(допустим с помощью WMA) javastic, Для лабы в универ, которая должна использовать сокеты это вполне подойдет а вот сервера я никогда не писал , ток немного jsp практиковал... -------------------- iOS developer |
|||
|
||||
Dancer |
|
|||
Опытный Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
JSP - этого будет вполне достаточно, сидишь слушаешь, как только что-то тебе пришло на твою страницу, то берёшь разбираешь request, в зависимости от того, что пользователь в запросе к этой странице навыбирал (строчку запроса сформировал), в зависимости от этого делаешь ответ этому пользователю, ну и вносишь какую-то информацию в БД или ещё где ты будешь хранить записи о твоих шашечных баталиях)
Из мидлета, делаешь вызов http://www.my_site.ru/log_my_MID_server.js...гая_информация( например, сколько этот серврер будет ждать пока к нему не подключиться кто-либо, по окончанию этого таймаута он отключается, ну и много чего ещё можно нафантазировать) в JSP разбираешь параметры, исходя из того какие параметры есть и какое они имеют значение организуешь всю логику работы. Например если есть параметр reg_as_server=true то, тот кто сейчас стучиться, он является сервером для отальных и ожидает подсоединения к себе клинетов. Получаешь IP с которого пришёл данный запрос, и заносишь это в своё хранилище (БД, XML, текстовый файл, Hashtable в памяти приложения на сервере, etc.) далее другой клиент идёт на страницу, на которой можно посмотреть есть ли сервера, которые ожидают подсоединения к себе клиентов, и по нику узнать кто ожидает. http://www.my_site.ru/servers_wait.jsp вытаскиваем из БД или где мы там храним наши здаписи, всё что касается текущих серверов, которые ожидают к себе подключения, IP, ник того кто запустил этот сервер на телефоне, возможно время когда этот сервер стартанул своё ожидание, и возомжно таймаут для ожидания, ну и так далее. Пользователь выбирает сервак (по IP или ещё как, не важно, главное что он знает IP сервера к которому хочет сконнектиться) Далее коннектиться и играет. По окончанию, с сервера-МИДЛЕТА может послаться результат как закончилась игра (возможно лог ходов и т.д.) на какакую либо специально созданную jsp или же уже на имеющиеся, с определённым набором параметров. Далее на серваке можно организовать лист рекордов (ну и что фантазия позволит) А если всё будет прикольно работать, то можно идти искать, кто такое может купить для коммерческой эксплуатации -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
|||
|
||||
javastic |
|
||||
Эксперт Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: 19 Всего: 27 |
Да, для практики сойдёт, а для реально работающего приложения не очень. Ну представь если ты выпустил коммерческий продукт, а им смогут пользоваться только меньшенство, а большинство удалят его со своего телефона. Ничего сложного в написании сервера нет. Добавлено @ 09:01
А можно сделать так: пользователь создает игру и автоматически является сервером. =) Добавлено @ 09:11 Кстати, предлагаю замутить какой-нибудь такой сетевой проект. Шашки там, крестики нолики, морской бой или ещё чего, по графике не очень сложное. Что скажете? -------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
||||
|
|||||
erka |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 13.7.2005 Репутация: 1 Всего: 1 |
Идея вообще прикольная. Замутить то можно, только вот траблы могут быть с разными мобильными операторами(IP одни реальные дают, другие не реальные). Кстати, для тех кто хочет что-то многопользовательское писать, сразу стоит отметить, что в j2me есть неприятное ограничение по количеству открытых активных соединений
|
|||
|
||||
Dancer |
|
||||
Опытный Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
так телефон и является сервером, просто сервер в тырнете поднятый нужен для того, чтобы следить за тем, кто сейчас из пользователь стартован как сервере, чтобы можно было присоединиться к этой игре. Так как у нас IP на телефоне могут меняться каждый раз, когда мы будет регистриться как сервер, то для этого и нужен какой-то общий ресурс, на который можно будет давать информацию об IP стартованных серверов-МИДЛЕТОВ. Как правильно заметил erka,
-------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! |
||||
|
|||||
dmitriy1111 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
javastic
Сетевые игры для сотовых - шашки , шахматы ... Это сообщение отредактировал(а) dmitriy1111 - 18.4.2006, 18:31 |
|||
|
||||
javastic |
|
|||
Эксперт Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: 19 Всего: 27 |
dmitriy1111, ну и что? "Велосипед не то что не надо изобретать, а нужно! Сделать его более совершенным, красивым и функциональным! Да, и седло конечно же под себя настроить. " ©Я.
Так что извини. Это сообщение отредактировал(а) javastic - 19.4.2006, 08:44 -------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
|||
|
||||
dmitriy1111 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 12.4.2006 Репутация: нет Всего: нет |
Конкуренция всегда была только на пользу
|
|||
|
||||
FAQ раздела лежит здесь! |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |