Передать несколько объектов в onRetainNonConfigurationInstance

1

В моем приложении я должен проверить местоположение пользователя, а затем подключиться к серверу, чтобы узнать, что является ближайшим городом. Это означает, что у меня есть два дорогостоящих объекта, которые я хотел бы сохранить при изменении конфигурации. Одна из них - задача, которая определяет местоположение, а другая - AsyncTask для извлечения данных с сервера. Теперь что мне делать, чтобы сохранить оба?

Мой подход заключается в создании статического класса в моей деятельности следующим образом:

static class NonConfigurationObject{

    MyLocation myLocationObject;
    AsyncTask myAsyncTask;

}

Затем, когда эти два объекта создаются, я передаю их этому объекту NonConfigurationObject и сохраняю этот объект, а затем выясню, существуют ли MyLocation и AsyncTask и нет необходимости их создавать.

Это хороший подход? Потому что мне кажется, что это хорошо, но я не видел, чтобы это делалось именно так.

EDIT: Таким образом, этот подход выглядит нормально. Но если у вас есть другой способ сделать это, пожалуйста, поделитесь им.

  • 0
    Я также нашел способ передать несколько объектов, расскажите подробнее, как вы этого добились.
  • 0
    Это не правильный способ сделать это больше. onRetainNonCOnfigurationInstance больше не onRetainNonCOnfigurationInstance : developer.android.com/reference/android/app/… .
Показать ещё 3 комментария
Теги:
android-orientation

1 ответ

2
Лучший ответ

Это приемлемый подход, если вы используете статический класс, чтобы избежать утечки памяти.

  • 0
    Спасибо за быстрый ответ. Это приемлемо, вы говорите. Так есть ли лучший, более оптимизированный, более простой, какой-либо подход?
  • 0
    Я не думаю, что есть лучший способ. Это легкий вес, простой и быстрый. Я говорю приемлемо, потому что не люблю говорить, что есть только один способ сделать что-то :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню