Используйте приложение или контекст активности в CookieSyncManager.createInstance - PullRequest
1 голос
/ 29 сентября 2011

Является ли хорошей идеей использовать контекст приложения вместо контекста активности в вызове CookieSyncManager.createInstance ()?

CookieSyncManager.createInstance(activity.getApplicationContext());

В SDK Facebook он использует контекст активности, который, я думаю, вызовет утечку памяти:

CookieSyncManager.createInstance(activity);

Поэтому я решил изменить его на CookieSyncManager.createInstance (activity.getApplicationContext ());

Есть ли проблема в использовании контекста приложения в этом случае?

Спасибо.

1 Ответ

3 голосов
/ 31 июля 2012

Старый вопрос, но я просто искал то же самое.

Оказывается, не имеет значения, что Context вы предоставляете в createInstance(), потому что внутренне он просто принимает предоставленное contextи звонит getApplicationContext() на него.Так или иначе это закончится использованием контекста приложения.Вот исходный код .

. Мне было любопытно, потому что я не был уверен, будет ли класс CookieSyncManager синхронизировать / сохранять все файлы cookie во всем приложении или только те, которые находятся вActivity который его создал (если вы указали только контекст активности вместо контекста приложения).Но даже зная, что он использует контекст приложения для внутреннего использования, я все еще не уверен в этом.

Мне бы очень хотелось, чтобы документация была более ясной о том, какого уровня контекста они хотят / ожидают.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...