您的位置:首页 > 移动开发 > Android开发

获取手机电量百分比

2016-02-17 12:41 441 查看
获取手机电量百分比。
import android.os.Bundle;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

private TextView text;
BatteryBroadcastReciver reciver;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initUI();
}

private void initUI() {
// TODO Auto-generated method stub
text = (TextView)findViewById(R.id.text);
reciver=new BatteryBroadcastReciver();
//registerReceiver(new BatteryBroadcastReciver(), new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
}

@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
unregisterReceiver(reciver);//取消注册
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
//创建一个过滤器
IntentFilter intentFilter=new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(reciver, intentFilter);
}
/**
* 获取手机当前电量广播
* @author nsc
*
*/
public class BatteryBroadcastReciver extends BroadcastReceiver{
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
//判断当前电量是否改变
if(intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED)){
//获取手机当前电量
int level=intent.getIntExtra("level", 0);
//获取手机总电量
int total=intent.getIntExtra("scale", 100);
text.setText("当前电量:"+(level*100)/total+"%");
//当电量小于15%时提示电量
if(level<15){
Toast.makeText(MainActivity.this, "当前电量已小于15%!",Toast.LENGTH_LONG).show();
}
}
}
}

}

使用权限

<uses-permission android:name="android.permission.BATTERY_STATS"/>

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息