1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import android.content.Intent import android.content.IntentFilter import android.os.BatteryManager import android.os.Bundle import android.widget.Toast import androidx.activity.ComponentActivity import androidx.activity.compose.setContent class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val batteryStatus = getBatteryStatus() showToast("Nivel de batería: ${batteryStatus}%") } } private fun getBatteryStatus(): Int { val ifilter = IntentFilter(Intent.ACTION_BATTERY_CHANGED) val batteryStatus: Intent? = registerReceiver(null, ifilter) val level: Int = batteryStatus?.getIntExtra(BatteryManager.EXTRA_LEVEL, -1) ?: -1 val scale: Int = batteryStatus?.getIntExtra(BatteryManager.EXTRA_SCALE, -1) ?: -1 return if (level != -1 && scale != -1) { (level.toFloat() / scale.toFloat() * 100).toInt() } else { -1 } } private fun showToast(message: String) { Toast.makeText(applicationContext, message, Toast.LENGTH_LONG).show() } } |