package com.yuanxuan.rokid import android.os.Bundle import androidx.activity.addCallback import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat import androidx.lifecycle.lifecycleScope import com.yuanxuan.rokid.databinding.ActivityMainBinding import com.yuanxuan.rokid.dependencies.AppDependencies import com.yuanxuan.rokid.device.DeviceServiceManager import kotlinx.coroutines.launch class MainActivity : AppCompatActivity() { private lateinit var binding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets -> val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()) v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom) insets } lifecycleScope.launch { /** * 监听电量 */ AppDependencies.deviceServiceManager.batteryPercentage.collect { binding.batteryLevel.text = "${it}%" binding.batteryLevelIv.setImageLevel(it) } } lifecycleScope.launch { AppDependencies.deviceServiceManager.wifiState.collect { when (it) { is DeviceServiceManager.WifiState.Connected -> binding.wifiIv.setImageLevel(it.level) DeviceServiceManager.WifiState.Unconnected -> binding.wifiIv.setImageLevel(0) } } } /** * 拦截返回键事件,防止返回到桌面 */ onBackPressedDispatcher.addCallback { } } }