获取当前SignalStrengths的androidSignalStrengths、android

2023-09-06 05:22:19 作者:不zhē腾不舒服

我想在任何按钮然后在Android设备当前的信号强度。结果我写了这个

 公共静态INT getSignal(上下文C){    类MyPhoneStateListener扩展PhoneStateListener {        INT信号;        @覆盖        公共无效onSignalStrengthsChanged(SignalStrength signalStrength){            super.onSignalStrengthsChanged(signalStrength);            信号= signalStrength.getGsmSignalStrength();        }    }    TelephonyManager电话;    MyPhoneStateListener myListener的;    myListener的=新MyPhoneStateListener();    电话=(TelephonyManager)c.getSystemService(Context.TELEPHONY_SERVICE);    Tel.listen(myListener的,PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);    Tel.listen(myListener的,PhoneStateListener.LISTEN_NONE);    返回MyListener.signal;} 

code,但它总是返回我0

请有人告诉我如何获取当前信号强度。

解决方案   

code,但它总是返回我0

当然。 onSignalStrengthsChanged()将还没有被调用。而且,你停止与 LISTEN_NONE 在线收听,所以你可能永远不会

  No Signal Alert

请任何机构告诉我如何获取当前信号强度。

您将获得 onSignalStrengthsChanged的信号强度(),一旦变化已经在信号强度检测,如果你摆脱了 LISTEN_NONE 行。仅使用 LISTEN_NONE 当你与听众进行。

I want to get current Signal Strengths in android device on any button click. I have written this

public static int getSignal(Context c) {
    class MyPhoneStateListener extends PhoneStateListener {

        int signal;

        @Override
        public void onSignalStrengthsChanged(SignalStrength signalStrength) {
            super.onSignalStrengthsChanged(signalStrength);
            signal = signalStrength.getGsmSignalStrength();
        }
    }
    TelephonyManager Tel;
    MyPhoneStateListener MyListener;
    MyListener = new MyPhoneStateListener();
    Tel = (TelephonyManager) c.getSystemService(Context.TELEPHONY_SERVICE);
    Tel.listen(MyListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);
    Tel.listen(MyListener, PhoneStateListener.LISTEN_NONE);
    return MyListener.signal;
}

code but it always returns me 0

Please somebody tell me how to get current Signal Strengths.

解决方案

code but it always return me 0

Of course. onSignalStrengthsChanged() will not have been called yet. And, you stop listening with your LISTEN_NONE line, so you will probably never

Please any body tell me how to get current Signal Strengths.

You will get the signal strength in onSignalStrengthsChanged(), once a change has been detected in the signal strength, if you get rid of the LISTEN_NONE line. Only use LISTEN_NONE when you are done with the listener.

 
精彩推荐
图片推荐