Страницы

Поиск по вопросам

Показаны сообщения с ярлыком приложение. Показать все сообщения
Показаны сообщения с ярлыком приложение. Показать все сообщения

понедельник, 13 апреля 2020 г.

Как сделать Андроид-игру сетевой?

#android #приложение

                    
Всем привет! Делаю свою карточную игру для Андроид. На данный момент готова версия
для одиночной игры - то есть уже можно играть против телефона. Теперь хочу сделать
сетевую версию - чтобы можно было играть против другого человека. Но пока не знаю,
с какой стороны подступиться. Помогите с направлением поисков!
Принципы должны быть такими:


Игрок может создать свою игровую комнату и ждать, пока кто-то в нее зайдет


Игрок может подключиться к уже созданной игровой комнате


Игрок может выбрать "случайную игру" и игровая комната создается автоматически, куда
перемещается он и его соперник, выбравший такой же тип игры.


При помощи каких методов подобные вещи осуществляются? Понятно, что тут в двух словах
не объяснишь, поэтому и прошу просто указать направление для дальнейших поисков. И
хотелось бы узнать, как с точки зрения алгоритма все происходит - обмен данными я имею
в виду.    


Ответы

Ответ 1



нужен сервер с апи, на чем написан не существенно, смотреть в сторону веб сервисов, я бы подобное делал с помощью soap но я не специалист в вебе, наверняка есть более простое решение

Ответ 2



Если нужен именно веб, то свой сервер необходим. Там пишем веб-сервис свой, не особо важно на каком языке. Реализовывать или на сокетах (на обычных хостингах не получится, так как там php и время выполнения скрипта ограничено 60 секундами), или в виде обычных http запросов (передавать всё, к примеру,в json). Если не обязателен веб (играть по блютусу или вафле), то один из телефонов будет в роли сервака выступать, а остальные как клиенты.

Ответ 3



Начните с сценария игры. Ну то есть как люди будут играть друг с другом, например: Два друга играют через смски или там bluetooth 10 друзей играют через некий игровой сервер Мульон человек играют через Facebook/VK В общем вариантов масса. Как только сценарий уложится в голове станет понятен протокол обмена, как только будет ясен протокол обмена к этому можно подтянуть и сервер/не сервер, p2p или что-то там еще. Из того что вы написали рисуется REST-alike веб сервис с обменом json данными.

вторник, 17 марта 2020 г.

Что нужно сделать с приложением перед добавлением в google play?

#android #google_play #приложение


У меня уже практически готовая версия приложения (осталось доделать маленькие штрихи),
даже зарегистрировался как разработчик, но я не знаю точно, что надо сделать с приложением.
Читал как-то статью об этом, но потерял её. Там говорилось,что нужно что-то в эклипсе
сделать, потом в ProGuard и т.п. Подскажите, пожалуйста,что нужно сделать по пунктам
или дайте ссылку на подробную статью. Заранее благодарю!    


Ответы

Ответ 1



Сгенерировать сертификат. Если приложение paid, то озаботиться защитой через License Verification Library. Подписать сгенерированным сертификатом. ProGuard необязательно. Выставить в Google Play. Чеклист, что надо сделать, здесь, и немного устаревшая статья.

понедельник, 6 января 2020 г.

Отправка команд на компьютер из Android приложения

#android #cpp #windows #приложение


Здравствуйте, у меня такой вопрос.
Возможно ли из своего Android приложения отправлять команды на компьютер (через Wi-Fi
или Bluetooth), на котором так же будет установлена программа принимающая данные команды
(на C++ к примеру) ?

Если имеет значение ОС на компе, то интересует Windows.

Что бы вы могли представить себе более понятно что имеется в виду, представьте себе
что Android приложение это как пульт для телевизора, то есть пользователь выполняет
действия, на комп отправляется команда, а там уже другая программа выполняет эти действия.

Я предполагаю что это возможно, но вот проблема в том что не могу найти как это реализовывается.
Могли бы вы подсказать в какую сторону копать что бы понять как такое можно сделать ?
В какую сторону искать что бы понять как с android приложения отправлять команды,
и в какую сторону искать что бы понять как их принимать на  С++ ?

Спасибо.
    


Ответы

Ответ 1



В случае если компьютер и девайс находятся в одной сети все предельно просто. На компьютере запускается приложение которое прослушивает определенный заранее выбранный порт, например по протоколу UDP. Порт можно выбрать любой от 1 до 65'535, обычно рекомендуют для домашнего использования больше 60'000, т.к. они обычно не заняты. Далее на девайсе посылаем бродкаст на выбранный порт с командой. В самом простом случае это может быть строка с кодовым словом или вообще JSON. Преимущество UDP в том что не обязательно указывать ip адрес получателя, сообщение разошлется по всей сети, но поймет его только тот кто слушает выбранный порт и знает формат команды.

Ответ 2



На C пишется Web-серверер (или используется готовый), на андроиде приложение отправляет ему GET/POST-запросами команды. Я, правда, сразу вижу проблему определения адреса сервера... Можно обойтись и без специального приложения на Android, если все действия будут в браузере выполняться.

Ответ 3



Такое можно написать на сокетах (использовать TCP/IP протокол). Android будет выступать сокет-клиентом, а сервер - сокет-сервером. В таком случае не только Andorid может посылать команды, но и сервер! Реализовать на Web-сервере (протокол HTTP). Кстати, например, вот бесплатный многопоточный веб-сервер: https://github.com/sitev/cjNetwork (сам писал ))) ). Можно взять другой бесплатный, более надёжный, например, мангуста: https://github.com/cesanta/mongoose CGI/FastCGI/SCGI

Ответ 4



Можно через Jabber ботов организовать, можно даже через email

четверг, 6 июня 2019 г.

Что нужно сделать с приложением перед добавлением в google play?

У меня уже практически готовая версия приложения (осталось доделать маленькие штрихи), даже зарегистрировался как разработчик, но я не знаю точно, что надо сделать с приложением. Читал как-то статью об этом, но потерял её. Там говорилось,что нужно что-то в эклипсе сделать, потом в ProGuard и т.п. Подскажите, пожалуйста,что нужно сделать по пунктам или дайте ссылку на подробную статью. Заранее благодарю!


Ответ

Сгенерировать сертификат. Если приложение paid, то озаботиться защитой через License Verification Library Подписать сгенерированным сертификатом. ProGuard необязательно. Выставить в Google Play Чеклист, что надо сделать, здесь, и немного устаревшая статья