Хороший вопрос!
сценарий использования обработчика
В моем приложении запущена фоновая служба Android, которая использует обработчики исключительно для веб-коммуникаций - я решил пойти по этому пути, потому что обработчик будет ставить запросы в очередь и выполнять их один за другим, поэтому я знаю, что последовательность остается неповрежденный.
Например, в приложении для обмена мгновенными сообщениями может потребоваться сохранить последовательность чата.
сценарий использования обратного вызова
Моя фоновая служба также использует класс, который читает с аппаратного обеспечения (в отдельном потоке); некоторые данные могут поступить в любое время и требуют немедленной обработки. Для этого класса я реализовал интерфейс слушателя / обратного вызова.
Мой единственный вопрос: есть ли этикет для размера обработчика?
У меня около 50 уникальных сообщений:
- исходящие веб-запросы состоят из около 25 сообщений (каждое сообщение представляет собой отдельный API на веб-сервере)
- Каждый API возвращает ответ, поэтому есть еще 25 входящих веб
ответы
Обработчику требуется около 60% кода службы - как вы можете себе представить, это приводит к очень большой структуре переключателя (case {}) (почти 1000 строк кода). Слишком большой? Как его разбить на части?