Ответ 1
Общий подход к использованию OkHttp - это один экземпляр OkHttp с одним экземпляром HttpResponseCache. Независимо от того, будет ли он создан как одноэлементный, зависит от требований вашего приложения. Например, единственный экземпляр OkHttp может быть создан в подклассе Android Application.onCreate(), и в этом случае он не должен быть синглом, если вы сделаете свой подкласс приложения Android класса Application одиночным.
Цитата из wiki:
"Большинство приложений должны вызывать новый OkHttp() ровно один раз, настроить его с их кешем, и использовать тот же самый экземпляр везде."
После создания экземпляра OkHttp вы можете использовать свой метод API setCookieHandler()
для добавления постоянного хранилища файлов cookie, который будет использоваться во всех последующих HTTP-запросах. См. этот ответ "SO" для получения дополнительной информации о реализации cookiestore, который работает с OkHttp.