Skip to content

MainActivity.kt #712

@myltik1702

Description

@myltik1702

package com.example.smarthome

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.Observer
import com.example.smarthome.manager.DeviceManager
import com.example.smarthome.manager.SceneManager
import com.example.smarthome.model.SmartDevice

class MainActivity : AppCompatActivity() {

private val deviceManager = DeviceManager()
private val sceneManager = SceneManager()

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    setupUI()
    loadDevices()
    loadScenes()
}

private fun setupUI() {
    // Пример: подписка на изменения списка устройств
    deviceManager.devices.observe(this, Observer { devices ->
        // Обновить UI (например, RecyclerView)
        updateDeviceList(devices)
    })
}

private fun loadDevices() {
    try {
        deviceManager.fetchDevices()
    } catch (e: Exception) {
        showError("Не удалось загрузить устройства: ${e.message}")
    }
}

private fun loadScenes() {
    try {
        sceneManager.fetchScenes()
    } catch (e: Exception) {
        showError("Не удалось загрузить сценарии: ${e.message}")
    }
}

private fun updateDeviceList(devices: List<SmartDevice>) {
    // Логика обновления интерфейса
}

private fun showError(message: String) {
    // Показать ошибку пользователю (Toast, Dialog и т.п.)
}

}
DeviceManager.kt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions