java如何使用广播查看电量变化

小编给大家分享一下java如何使用广播查看电量变化 ,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

public class BatteryChangedReceiver extends BroadcastReceiver {          

    @Override  

    public void onReceive(Context context, Intent intent) {  

        //当前电量

        int currLevel = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0);    

         //总电量    

        int total = intent.getIntExtra(BatteryManager.EXTRA_SCALE, 1);     

        int percent = currLevel * 100 / total;  

    }    

}  

在清单文件配置以下XMl:

<receiver android:name=".BatteryChangedReceiver">  

    <intent-filter>  

        <action android:name="android.intent.action.BATTERY_CHANGED"/>  

        <category android:name="android.intent.category.DEFAULT" />  

    </intent-filter>  

</receiver>  

立即获取电量的,而不是等电量变化的广播,比如当阅读软件打开时立即显示出电池电量。我们可以按以下方式获取:

Intent batteryIntent = getApplicationContext().registerReceiver(null,  

new IntentFilter(Intent.ACTION_BATTERY_CHANGED));  

int currLevel = batteryIntent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0);  

int total = batteryIntent.getIntExtra(BatteryManager.EXTRA_SCALE, 1);  

int percent = currLevel * 100 / total;  

以上是“java如何使用广播查看电量变化 ”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!