Hola amigos hoy veremos como mostrar el nivel de batería en un textView es un tema que algunos de ustedes han estado preguntando, así que hoy veremos como trabajarlo de forma sencilla en realidad no sera mucho código sin mas que decir empezamos de una buena vez.
Contenidos
Como mostrar el nivel de batería en un textview en android studio
Cosas que deberías saber sobre este ejercicio.
Trabajaremos con dos clases abstractas llamadas BroadcastReceiver y BatteryManager
Un Broadcast Receiver es el componente que está destinado a recibir y responder ante eventos globales generados por el sistema, como un aviso de batería baja, un SMS recibido, un SMS enviado, una llamada, un aviso de de la tajea SD, etc. y también a eventos producidos por otras aplicaciones.
Para obtener el nivel de la batería lo haremos por medio de la clase BatteryManager la cual nos proporciona un método para consultar las propiedades de carga y batería.FUENTES: BroadcastReceiver BatteryManager
Ahora empezaremos con la parte gráfica donde veremos como se muestra en la imagen que esta arriba, solo utilizaremos:
- 1 textView
A continuación te dejo el código de la parte gráfica:
activity_main
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/txtNivel" android:textSize="30sp" android:layout_centerHorizontal="true" android:layout_centerVertical="true" /> </RelativeLayout>
Ahora nos vamos a la parte del código en nuestro MainActivity:
MainActivity
import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.BatteryManager; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; public class MainActivity extends AppCompatActivity { TextView nivel; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); nivel =(TextView) findViewById(R.id.txtNivel); BroadcastReceiver bateriaReciever = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { context.unregisterReceiver(this); int currentLevel = intent.getIntExtra(BatteryManager.EXTRA_LEVEL,-1); int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE,-1); int level = -1; if (currentLevel >=0 && scale > 0){ level= (currentLevel * 100)/scale; } nivel.setText("Batería restante : "+level+"%"); } }; IntentFilter batteryFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED); registerReceiver(bateriaReciever,batteryFilter); } }
Conclusion:
Android nos da como siempre las suficientes herramientas para gestionar la parte del hardware por medio de software nativo ya incluido en las diferente versiones de nuestro IDE de Android.
Con eso hemos terminado, así que les voy dejar a continuación el enlace de descarga, pero recuerda. Copiar no es lo mismo que comparar.
Descargar: mostrar el nivel de batería en un textview
Password: www.androfast.com
También te puede interesar: Como hacer una aplicación reconocimiento de voz en android studio
Hola soy Alex Céspedes fundador de ANDROFAST, programo algunas cosas por diversión, me gusta aprender cosas nuevas y estoy pendiente de todo lo que tenga que ver con tecnología. Este blog lo cree para todas las personas que tengan dificultades en la programación, para ser sincero nunca fui bueno y reprobé algunos cursos de programación, pero mis ganas de aprender pudieron más. SI YO PUEDO TU PUEDES ANIMO!