BatteryManager y sus propiedades en Android?

En este artículo, vamos a aprender sobre BatteryManager y cómo podemos utilizarlo para saber el estado de la batería y otras propiedades de la batería ?

En primer lugar, tenemos que aprender el método de uso BatteryManager y comprobar el estado actual de la batería. En el ejemplo, a continuación vamos a utilizar el os.BatteryManager class tener toda la funcionalidad requerida class BatteryManager .

Para implementar esto en su programa tendrá que class: android.os.BatteryManager en su archivo de java. Ahora en su archivo XML que necesitamos una prueba botón class el estado de la batería. for esto sólo tiene que añadir el botón de esta manera:

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click and check the battery Status"
android:id="@+id/button"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="150dp"
android:onClick="check"/>

Ahora, este botón Utilizar un onClick atributo que se refería a una función llamada cheque , esta función se implementa en el archivo JAVA con lógicas correspondientes para comprobar el estado actual de la batería y el uso de la tostada class para hacer un texto.

Ahora en el import java obtendremos el estado de la carga de la línea por debajo de la batería: BatteryManager.BATTERY_PLUGGED_AC;

Esto class un for el que vamos a comprobar y si es verdad vamos a saber que este es el estado actual.

comprobaremos si la batería está llena o no si la batería no está lleno vamos a mostrar el nivel de la batería en porcentaje. Para comprobar si la batería está llena vamos a utilizar esta línea: estado == BatteryManager.BATTERY_STATUS_FULL;

Toast.makeText(getApplicationContext(),
"Device is "+isPercentage+"% charge",Toast.LENGTH_LONG).show();

1) Archivo de Java:

package com.example.hp.myapplication;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.BatteryManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
Button b;
int isPercentage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b=(Button)findViewById(R.id.button);
}
public void check(View v){
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = registerReceiver(null, ifilter);
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
BatteryManager bm=(BatteryManager)getSystemService(BATTERY_SERVICE);
isPercentage = bm.getIntProperty(BatteryManager.BATTERY_PROPERTY_CAPACITY);
boolean isFull = status == BatteryManager.BATTERY_STATUS_FULL;
if(isFull)
{
Toast.makeText(getApplicationContext(),"Device is fully charged",Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(getApplicationContext(),"Device is "+isPercentage+"% charge",Toast.LENGTH_LONG).show();
}
}
@Override
protected void onDestroy() {
super.onDestroy();
}
}

2) archivo XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout >:android="http://schemas.android.com/apk/res/android"
>:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.hp.myapplication.MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click and check the battery Status"
android:id="@+id/button"
android:layout_centerHorizontal="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="150dp"
android:onClick="check"/>
</RelativeLayout>

3) Menifest archivo:

<?xml version="1.0" encoding="utf-8"?>
<manifest >:android="http://schemas.android.com/apk/res/android"
package="com.example.hp.myapplication">
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

salida


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *