[MT8766][Android12] 取消WIFI热点超过10分钟没有连接自动关闭设定

开发平台基本信息

芯片: MT8766
版本: Android 12
kernel: msm-4.19

问题描述

之前有个需求要设备默认开启WIFI热点,默认开启usb共享网络;而热点在原生的设定里面有个超时机制,如果在限定时间内,没有任何设备连接共享出来的网络,则会自动关闭热点。但是,客户的需求是一直保持共享网络开启。

解决方法

热点超时时间是读取config文件中config_wifiFrameworkSoftApShutDownTimeoutMilliseconds的值;这个在低版本是写在framework目录下;而在Android12中,则是放在了packages/modules/Wifi/service/ServiceWifiResources/res/values/config.xml;默认值是
600000
;也就是10分钟;所以,改大这个默认值也可以实现默认不关闭,但是,最大也就是int类型的最大值2147483647;大概是10天左右。

  • 还有一种做法,就是在触发超时关闭共享网络的地方,跳过关闭的步骤,具体实现如下:
--- a/packages/modules/Wifi/service/java/com/android/server/wifi/SoftApManager.java
+++ b/packages/modules/Wifi/service/java/com/android/server/wifi/SoftApManager.java
@@ -1424,21 +1424,21 @@ public class SoftApManager implements ActiveModeManager {
                         // Already started, ignore this command.
                         break;
                     case CMD_NO_ASSOCIATED_STATIONS_TIMEOUT:
-                        if (!mTimeoutEnabled) {
-                            Log.wtf(getTag(), "Timeout message received while timeout is disabled."
-                                    + " Dropping.");
-                            break;
-                        }
-                        if (getConnectedClientList().size() != 0) {
-                            Log.wtf(getTag(), "Timeout message received but has clients. "
-                                    + "Dropping.");
-                            break;
-                        }
-                        mSoftApNotifier.showSoftApShutdownTimeoutExpiredNotification();
-                        Log.i(getTag(), "Timeout message received. Stopping soft AP.");
-                        updateApState(WifiManager.WIFI_AP_STATE_DISABLING,
-                                WifiManager.WIFI_AP_STATE_ENABLED, 0);
-                        quitNow();
+                        // if (!mTimeoutEnabled) {
+                        //     Log.wtf(getTag(), "Timeout message received while timeout is disabled."
+                        //             + " Dropping.");
+                        //     break;
+                        // }
+                        // if (getConnectedClientList().size() != 0) {
+                        //     Log.wtf(getTag(), "Timeout message received but has clients. "
+                        //             + "Dropping.");
+                        //     break;
+                        // }
+                        // mSoftApNotifier.showSoftApShutdownTimeoutExpiredNotification();
+                        // Log.i(getTag(), "Timeout message received. Stopping soft AP.");
+                        // updateApState(WifiManager.WIFI_AP_STATE_DISABLING,
+                        //         WifiManager.WIFI_AP_STATE_ENABLED, 0);
+                        // quitNow();
                         break;
                     case CMD_NO_ASSOCIATED_STATIONS_TIMEOUT_ON_ONE_INSTANCE:
                         if (!isBridgedMode() || mCurrentSoftApInfoMap.size() != 2) {

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值