Объект в BroadcastReceiver - PullRequest
       0

Объект в BroadcastReceiver

0 голосов
/ 04 февраля 2012

Я использую BroadcastReceiver для управления поведением моего приложения при входящем звонке.
Мне нужен доступ к объекту, созданному в моей ОСНОВНОЙ активности.
В своей основной деятельности я создаю объект любым методом, который мне нужно выполнить в BroadcastReceiver.

Как я могу получить к нему доступ?

Ответы [ 2 ]

1 голос
/ 04 февраля 2012

Любой объект, который вы добавляете намеренно и отправляете через широковещательную рассылку, ваш объект должен реализовать Parcelable

0 голосов
/ 04 февраля 2012

Попытайтесь создать новый класс, который расширяет Application, в этом классе создайте глобальную переменную с методами getter и setter

public class MyApplication extends Application
{
  private YourTypeObject object;
  public void setObj(YourTypeObject  obj )
  {
    object=obj;
  }
  public YourTypeObject getObj()
  {
    return object;
  }
  ...
}

В вашей MAIN-активности вы можете использовать

...
YourTypeObject myobj=....
MyApplication  application = (MyApplication) this.getApplication();
application.setObj(myobj);
...

Теперь в своей другой деятельности вы можете использовать

...
MyApplication  application = (MyApplication) this.getApplication();
YourTypeObject obj=getObj();
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...