複製代碼 代碼如下:/**
*
* @author chrp
*
*顯示當前電池電量
*/
public class MainActivity extends Activity {
private TextView tv;
/**
* 廣播接受者
*/
class BatteryReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
//判斷它是否是為電量變化的Broadcast Action
if(Intent.ACTION_BATTERY_CHANGED.equals(intent.getAction())){
//擷取當前電量
int level = intent.getIntExtra("level", 0);
//電量的總刻度
int scale = intent.getIntExtra("scale", 100);
//把它轉成百分比
tv.setText("電池電量為"+((level*100)/scale)+"%");
}
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
tv = new TextView(this);
tv.setText("chrp");
this.setContentView(tv);
//註冊廣播接受者java代碼
IntentFilter intentFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
//建立廣播接受者對象
BatteryReceiver batteryReceiver = new BatteryReceiver();
//註冊receiver
registerReceiver(batteryReceiver, intentFilter);
}