Подтвердить что ты не робот

Использование Intents или шины событий для связи в одном приложении

Я понимаю, как использовать Intents для связи с системой/другими приложениями. Я понимаю, как использовать Intents в одном приложении. Я также понимаю, как использовать Отто для связи в одном приложении.

Каковы преимущества/недостатки использования Отто и намерений для связи между моими действиями/услугами?

4b9b3361

Ответ 1

Плюсы за использование Отто:

  • Вы можете создавать свои собственные типы событий, вместо того, чтобы использовать пользовательские действия или что-то, чтобы отличить один Intent от другого

  • Все в вашем собственном процессе (контраст с startActivity() и kin, который всегда включает IPC, даже если действие, которое вы запускаете, находится в вашем собственном приложении), для скорости и безопасности

  • Кодирование немного меньше, поскольку вам не нужно создавать экземпляры объектов IntentFilter или BroadcastReceiver

  • Он предлагает шаблон производителя (как квазизаменяемость для липких трансляций)

  • Будучи не частью ОС, она может быть обновлена ​​чаще.

Против использования Отто:

  • Невозможно запустить активность

  • Не удается запустить службу

  • Он не может привязываться к сервису

  • Он не может отправлять широковещательную рассылку

  • Он не может использоваться в PendingIntent или для любого истинного IPC

IOW, истинное сравнение для Otto с LocalBroadcastManager, а не с общим использованием Intents.