val bluetoothModule = module {
single {
androidContext().getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager
}
}
Я не уверен, что это действительно безопасно с точки зрения жизненного цикла Android/утечки памяти:
Может ли этот подход вызвать какие-либо проблемы жизненного цикла, утечки или «устаревшие» ссылки при включении/выключении Bluetooth или когда приложение переходит в фоновый/передний план?
Поддерживает ли BluetoothManager или BluetoothAdapter как одиночные Koin (т. е. синглтоны для всего приложения) нормально, учитывая, что они поступают из getSystemService
Есть ли какие-либо другие проблемы с этим подходом, о которых мне не известно?
Я использую Koin для внедрения зависимостей в приложении Android и хочу предоставить BluetoothManager через DI. Сейчас у меня есть такой модуль: [code]val bluetoothModule = module {
single { androidContext().getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager } } [/code] Я не уверен, что это действительно безопасно с точки зрения жизненного цикла Android/утечки памяти: [list] [*]Может ли этот подход вызвать какие-либо проблемы жизненного цикла, утечки или «устаревшие» ссылки при включении/выключении Bluetooth или когда приложение переходит в фоновый/передний план?
[*]Поддерживает ли BluetoothManager или BluetoothAdapter как одиночные Koin (т. е. синглтоны для всего приложения) нормально, учитывая, что они поступают из getSystemService
[*]Есть ли какие-либо другие проблемы с этим подходом, о которых мне не известно?