#java #android #клиент_сервер
Пробую свои силы в клиент-серверах и наткнулся на такую проблему, если я хочу чтобы на стороне клиента после подключения к серверу сменился Activity, но соединение не потерялось, то как это реализовать понять не могу. Подключение клиента реализовывал в AsyncTask, который получается привязан к одному Activity. Для наглядного понимания вот пример: Допустим все клиенты сначала собираются в "комнате", а после того как все подключились дается команда перейти на другое Activity с вопросами. Что-то типо онлайн викторины где все стартуют одновременно.
Ответы
Ответ 1
есть один вариант. Запускать этот AsyncTask только один раз, и тогда можно будет обращаться к нему из любого Activity. public class DownloadWebPageTask extends AsyncTask{ private static DownloadWebPageTask downloadWebPageTask; private Socket socket; // Это для соединения с сервером private DownloadWebPageTask(){ } public static synchronized DownloadWebPageTask getInstance( ) { if (downloadWebPageTask == null) downloadWebPageTask = new DownloadWebPageTask (); return downloadWebPageTask; } //... } использовать так (из любого Activity) DownloadWebPageTask downloadWebPageTask = DownloadWebPageTask.getInstance(); downloadWebPageTask.execute(a, b, c);
Комментариев нет:
Отправить комментарий