Итак, мое приложение обменивается сообщениями с/на мою MainActivity в/из фоновой службы, и я использовал EventBus для справиться с этим. Я регистрирую оба компонента с помощью
EventBus.getDefault().register(this);
на их onCreates. И я отправляю/получаю событие с помощью:
EventBus.getDefault().post(new MyMessagePojo("message"));
и
public void onEvent(MyMessagePojo event) { ... }
Все работает хорошо, когда я запускаю проект из AndroidStudio прямо на свой тестовый телефон. Однако, когда я сгенерировал подписанный APK, я установил приложение и получил сбой со следующим исключением:
Subscriber class my.package.MainActivity has no public methods called onEvent
Где явно есть. Я попытался изменить его с onEvent
на onEventMainThread
в своей MainActivity, но безуспешно. Это довольно неприятно, так как я собирался опубликовать приложение, а теперь не могу решить эту проблему.
Я прошел через это и this, но они не помогли.
Любые идеи?
onEvent()
, так как считает, что переименовывать безопасно. Настройте конфигурацию ProGuard вашего проекта, чтобы сохранить этот метод. - person CommonsWare   schedule 16.06.2015