CellHandler.java 文件源码

java
阅读 18 收藏 0 点赞 0 评论 0

项目:myStress 作者:
/**
 * Called when the signal strength has changed
 * 
 * @param signalStrength
 *            strength of the newly detected signal. First, we get the ASU
 *            by calling getGsmSignalStrength(), then we calculate the dBm
 *            through dBm = -113 + 2* ASU
 * @see android.telephony.PhoneStateListener#onSignalStrengthsChanged(android.telephony.SignalStrength)
 */
@Override
public void onSignalStrengthsChanged(SignalStrength signalStrength) {
    int strength, signal;

    // signal strength in ASU
    strength = signalStrength.getGsmSignalStrength();

    // convert ASU in dBm
    signal = -113 + 2 * strength;

    // has anything changed?
    if (signal != oldcellStrength) {
        // convert ASU into bars
        if (strength <= 2 || strength == 99)
            oldcellStrength_bar = 0;
        else if (strength >= 12)
            oldcellStrength_bar = 4;
        else if (strength >= 8)
            oldcellStrength_bar = 3;
        else if (strength >= 5)
            oldcellStrength_bar = 2;
        else
            oldcellStrength_bar = 1;

        oldcellStrength = signal;

        // stuff can be read now
        signal_read = true;
        bar_read = true;

        // release semaphores
        signal_semaphore.release();
        bar_semaphore.release();
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号