zoukankan      html  css  js  c++  java
  • Android取得电池的电量

     1 首先需要用到的是一个类继承BrocastReceiver
     2 代码如下:
     3 public class Battery_Info extends BroadcastReceiver
     4  {
     5 
     6     @Override
     7     public void onReceive(Context context, Intent intent)
     8     {
     9         //首先要进行一个判段当前广播是不是接受的是电池信息的action操作
    10         if(intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED))
    11         {
    12             int level=intent.getExtras().getInt("level");
    13                 //获取当前电量其中level和scale是系统已经预定好的不可更改为其他的变量名
    14             int scale=intent.getExtras().getInt("scale");//获得总电量
    15             Builder dialog=new AlertDialog.Builder(context);
    16             dialog.setIcon(R.drawable.ic_launcher);
    17             dialog.setTitle("电池电量");
    18             dialog.setMessage("当前电池电量为:"+level*100/scale+"%");
    19             dialog.setPositiveButton("确定", new OnClickListener(){
    20                 @Override
    21                 public void onClick(DialogInterface dialog, int which) {
    22 
    23                     dialog.dismiss();
    24                      
    25                 }
    26                 
    27             }).create();
    28             dialog.show();
    29         }
    30     }
    31 
    32    }
    33 
    34 然后在MainActivity中注册广播机制;
    35 代码如下:
    36 public class MainActivity extends Activity {
    37 
    38     private Button getBattery;
    39     public void onCreate(Bundle savedInstanceState) {
    40         super.onCreate(savedInstanceState);
    41         setContentView(R.layout.main);
    42         
    43         this.getBattery=(Button) super.findViewById(R.id.button1);
    44         this.getBattery.setOnClickListener(new OnClickListener()
    45         {
    46             public void onClick(View v)
    47             {
    48                 Battery_Info batteryBrocastReceiver=new Battery_Info();
    49 
    50                 //注册广播之前需要进行一个Intent的一个过滤,也就是把他设置为电池信息状态的IntentFilter对象
    51                 IntentFilter filter=new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
    52                 
    53                 
    54                 MainActivity.this.registerReceiver(batteryBrocastReceiver, filter);//注册广播机制
    55             }
    56         });
    57     }
    58 64 }
  • 相关阅读:
    php intval()函数
    MVC开发模式
    Session详解
    JSP入门
    Response中文乱码问题
    cookie入门
    idea实现更改servlet模板
    使用new和newInstance()创建类的区别
    Servlet 3.0 新特性详解
    web Servlet 3.0 新特性之web模块化编程,web-fragment.xml编写及打jar包
  • 原文地址:https://www.cnblogs.com/tianshidechibang234/p/3198874.html
Copyright © 2011-2022 走看看