چک کردن وضعیت باطری گوشی در اندروید

چهارشنبه 7 تیر 1396

در این مقاله قصد داریم که وضعیت گوشی باطری اندروید خود را چک نماییم این سورس وضعیت باطری را چک می کند و وضعیت آن را اعلام می نماید و برای اپلیکیشن هایی که در زمینه ی سخت افزار و شی تهیه می شود مفید است.

چک کردن وضعیت باطری گوشی در اندروید

ابتدا در کلاس جاوا قطعه کد زیر را قرار دهید:

import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.BatteryManager;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends Activity {

 TextView textview;
 Button button;
 Context context;
 IntentFilter intentfilter;
 int status;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 
 textview = (TextView)findViewById(R.id.textView1);
 button = (Button)findViewById(R.id.button1);
 
 intentfilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
 
 button.setOnClickListener(new View.OnClickListener() {
 
 @Override
 public void onClick(View v) {
 // TODO Auto-generated method stub
 
 MainActivity.this.registerReceiver(broadcastreceiver,intentfilter);
 
 }
 });
 }
 
 BroadcastReceiver broadcastreceiver = new BroadcastReceiver() {
 @Override
 public void onReceive(Context context, Intent intent) {
 
 status = intent.getIntExtra(BatteryManager.EXTRA_HEALTH,0);
 
 if(status == BatteryManager.BATTERY_HEALTH_COLD){
 
 textview.setText("Battery health = Cold");
 
 }
 if (status == BatteryManager.BATTERY_HEALTH_DEAD){
 
 textview.setText("Battery health = Dead");
 
 }
 if (status == BatteryManager.BATTERY_HEALTH_GOOD){
 
 textview.setText("Battery health = Good");
 
 }
 if (status == BatteryManager.BATTERY_HEALTH_OVERHEAT){
 
 textview.setText("Battery health = Over Heat");
 
 }
 if (status == BatteryManager.BATTERY_HEALTH_OVER_VOLTAGE){
 
 textview.setText("Battery health = Over Voltage");
 
 }
 if(status == BatteryManager.BATTERY_HEALTH_UNKNOWN){
 
 textview.setText("Battery health = Unknown");
 
 }
 if(status == BatteryManager.BATTERY_HEALTH_UNSPECIFIED_FAILURE){
 
 textview.setText("Battery health = Unspecified failure");
 
 }
 

 }
 };
 

}

حالا در قسمت layout باید کد زیر را قرار دهید:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns: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.getbatteryhealth_android_examples.com.MainActivity" >

 <TextView
 android:id="@+id/textView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_alignParentTop="true"
 android:layout_centerHorizontal="true"
 android:layout_marginTop="184dp"
 android:text="Battery health"
 android:textAppearance="?android:attr/textAppearanceLarge" />

 <Button
 android:id="@+id/button1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_below="@+id/textView1"
 android:layout_centerHorizontal="true"
 android:layout_marginTop="17dp"
 android:text="Click here to Check/Get battery health in android programmatically" />

</RelativeLayout>

این سورس با استفاده از broadcast  می توانید وضعیت گوشی خود را بسنحید.

خروجی کار:

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید