Я работаю над приложением, в котором мне нужно соединение с сервером.Мне также нужно получить доступ к этому соединению из различных действий.
Чтобы добиться этого, я собирался переопределить класс Application
и создать соединение там.Это позволило бы легко взаимодействовать с каждым делом, так как я мог просто позвонить getApplicationContext().getConnection()
, чтобы получить доступ к своему классу соединений.
Проблема этого подхода заключается в том, что у класса Application
нет никакого метода onDestroy()
или подобного, в котором я могу освободить соединение и любые связанные ресурсы.Я не думаю, что наилучшим подходом здесь является простаивание до вызова onLowMemory()
.
Я не могу добавить пользовательский метод release()
, так как не знаю, когда его вызывать (есть две операции, которые могутбыть последним активным, и в зависимости от действий пользователей, которых они не знают, должен ли другой запускаться при выключении активного).
Есть ли хорошее решение для этого, если япросто игнорируйте освобождение ресурсов (до onLowMemory()
) или есть лучший способ достичь того, чего я хочу (возможно, Service
, но, поскольку будет несколько вызовов базового класса, это может стать чрезмерно проблематичным с Сервисом?)