По поводу сигнал/слот: так и реализовано. Этот цикл запускается в слоте, подключенному к readyRead. Но одна высылка сигнала readyRead не гарантирует доставку всего сообщения (читай json), а говорит только о том, что пришла первая порция данных, а остальную надо ждать.
По поводу «если с концом строки придет ещё что-то». В моём случае не придёт. Сервер отвечает на запросы клиента и самостоятельно ничего не посылает. То есть передаётся одно сообщение, а не несколько сообщений, разделенных символом конца строки
Через datastream не вариант. Так как с сервером общается не только qt приложение-клиент. Но и джава клиент (андроид). А разбираться с форматом datastream не хочется
все же подумал и решил проблему следующим образом: на стороне сервера при отправке сообщения к сообщению добавляю признак конца строки. на стороне клиента при приеме сообщения делаю:
Насколько я знаю, Service не создает отдельный поток. В общем проблема в том, что в в андроиде начиная с версии 4 нельзя работать с сетью в потоке гуи, надо все выносить в отдельный поток. В этом у меня и проблемы в «архитектуре» приложения.
На стороне сервера проверяю. То, что пришло от клиента, пишу в консоль. Дабы видеть пришло/не пришло
под линукс была сборка Qt5.1 for linux. инсталлер. скачал, поставил. профиль под андроид есть. но не компилируется. видимо, придется качать necessitas годичной давности гдето
ок, спасибо. имею в виду. а что-то вроде «мультитача» (определяется два объекта) есть? я просто гуглю и не знаю как запрос составить) ничего такого не нагуглил
По поводу «если с концом строки придет ещё что-то». В моём случае не придёт. Сервер отвечает на запросы клиента и самостоятельно ничего не посылает. То есть передаётся одно сообщение, а не несколько сообщений, разделенных символом конца строки