基于android5.0以上版本:
首先我们必须在AndroidManifest.xml中添加相关权限:
android.permission.CHANGE_NETWORK_STATE
具体实现方法:
自定义一个类MyPhoneStateListener ,继承PhoneStateListener类,并重写其onSignalStrengthChanged(int asu)方法。
<span style="background-color: rgb(204, 204, 204);">private class MyPhoneStateListener extends PhoneStateListener {
@Override
public void onSignalStrengthsChanged(int asu) {
。。。。
}
};</span>
如果想使我们自定义的这个方法起作用,我们还必须设置监听:
private MyPhoneStateListener myListener;
private TelephonyManager tel;
myListener = new MyPhoneStateListener();
tel = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);或者tel = TelephonyManager.from(mContext);
tel.listen(myListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS); //设置监听,开始监听
tel.listen(myListener, PhoneStateListener.LISTEN_NONE); //停止监听
主要过程就是,设置监听,设置处理事件,结束监听。