您的位置:首页 > 其它

监听电池电量,信号强度,手机状态

2010-04-19 15:04 603 查看
监听电池电量:

this.registerReceiver(this.mBatInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));

private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver() {

public void onReceive(Context arg0, Intent intent) {

int level = intent.getIntExtra("level", 0);// 电量百分比

contentTxt.setText("BAttery : "+String.valueOf(level) + "%");

}

};

监听手机信号强度,手机状态:

TelephonyManager tm = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);

//对TelephonyManager 进行监听,psl为PhoneStateListener,在 psl 中重些了一些方法

tm.listen(psl, PhoneStateListener.LISTEN_SIGNAL_STRENGTH|PhoneStateListener.LISTEN_CALL_STATE);

PhoneStateListener psl = new PhoneStateListener(){

public void onCallStateChanged(int state, String incomingNumber) {

super.onCallStateChanged(state, incomingNumber);

Log.v("zzzzzz", "onCallStateChanged : " + state + " PhoneStateListener " + incomingNumber);

}

public void onSignalStrengthChanged(int asu) {

super.onSignalStrengthChanged(asu);

signalStrengthTxt.setText("SignalStrength : "+asu);

}

public void onCallForwardingIndicatorChanged(boolean cfi) {

super.onCallForwardingIndicatorChanged(cfi);

}

public void onCellLocationChanged(CellLocation location) {

super.onCellLocationChanged(location);

}

public void onDataActivity(int direction) {

super.onDataActivity(direction);

}

public void onDataConnectionStateChanged(int state) {

super.onDataConnectionStateChanged(state);

}

public void onMessageWaitingIndicatorChanged(boolean mwi) {

super.onMessageWaitingIndicatorChanged(mwi);

}

public void onServiceStateChanged(ServiceState serviceState) {

super.onServiceStateChanged(serviceState);

}

};

各方法的具体作用可以参考android.telephony.PhoneStateListener
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: