Android P版本---MTK平台wifi热点bug

最近接触手机方案这块,面对的是MTK平台

这个BUG是一个MTK平台ANDROID版本p的WIFI热点的BUG问题

下面我把bug图发出来大家看看,首先A手机产生WIFI热点,B / C手机去连接,此时A手机显示连接数是2台,这个是没问题的,问题就出现在,当A手机进去热点连接人数管理的时候,把乙手机封锁掉,此时最外面的连接人数并没有刷新改变,还是显示2个手机连接,这就是BUG了

下面我上图

1.TetherSettings

 
private WifiTetherPreferenceController mWifiTetherPreferenceController;
@Override
public void onAttach(Context context) {
    super.onAttach(context);
    mWifiTetherPreferenceController =
            new WifiTetherPreferenceController(context, getLifecycle());
}
2.WifiTetherPreferenceController
@Override
public void onStart() {
    if (mPreference != null) {
        mContext.registerReceiver(mReceiver, AIRPLANE_INTENT_FILTER);
        clearSummaryForAirplaneMode();
        if (mWifiTetherSoftApManager != null) {
            mWifiTetherSoftApManager.registerSoftApCallback();
        }
    }
}

3.WifiTetherSoftApManager

public void registerSoftApCallback() {
    mWifiManager.registerSoftApCallback(mSoftApCallback, mHandler);
}


private WifiManager.SoftApCallback mSoftApCallback = new WifiManager.SoftApCallback() {
    @Override
    public void onStateChanged(int state, int failureReason) {
        mWifiTetherSoftApCallback.onStateChanged(state, failureReason);
    }

    @Override
    public void onNumClientsChanged(int numClients) {
        mWifiTetherSoftApCallback.onNumClientsChanged(numClients);
    }
};

4.SoftApCallback

public interface ISoftApCallback extends android.os.IInterface

5.

WifiServiceImpl

全局搜索 ISoftApCallback 应用到的地方

来到

WifiServiceImpl

他继承自

MtkWifiServiceImpl

MtkSoftApManager

注释掉

    //setNumAssociatedStations(message.arg1);

加入

   private void updateConnectedNum(){
                int connectNum =0;
                List<HotspotClient> clientList =  getHotspotClientsList();
                if (clientList != null) {
                    for (HotspotClient client : clientList) {
                        if (!client.isBlocked) {
                            connectNum++;
                        }
                    }
                }
                setNumAssociatedStations(connectNum);
            }

猜你喜欢

转载自blog.csdn.net/yangbin0513/article/details/85199178