推广普通话调查问卷,成都网站关键字优化,加强企业网站建设,seo优化心得Android 打开热点2.4G系统重启解决 文章目录 Android 打开热点2.4G系统重启解决一、前言二、过程分析1、Android 设备开机后第一次打开热点2.4G系统重启2、日志分析3、设备重启原因 三、解决方法四、其他1、wifi/有线网 代理信息也可能导致系统重启2、Android13 热点默认5G频道…Android 打开热点2.4G系统重启解决 文章目录 Android 打开热点2.4G系统重启解决一、前言二、过程分析1、Android 设备开机后第一次打开热点2.4G系统重启2、日志分析3、设备重启原因 三、解决方法四、其他1、wifi/有线网 代理信息也可能导致系统重启2、Android13 热点默认5G频道配置修改3、Android 设置默认热点名称和热点密码、密码长度 一、前言
Android 设备开机后第一次打开热点2.4G系统重启以5G形式打开热点没有问题
这个问题咋回事呢和底层驱动的人一起分析了一下本文进行分享一下分析和解决过程。
这种问题一般应用开发不会遇到只有一些系统开发或者系统新方案调试可能会遇到。
查看了AndroidRuntime 和crash 日志重启前没啥异常日志。这种情况一般是底层/驱动未完全适配导致。
二、过程分析
1、Android 设备开机后第一次打开热点2.4G系统重启
以5G形式打开热点没有问题
并且第一次以5G形式打开热点第二次再以2.4G形式可以正常打开热点。
这种情况没遇到过啊只能看看日志了。
2、日志分析
查看了AndroidRuntime 和 crash 关键字的日志重启前没啥异常日志。
设备重启的异常情况一般adb日志比较难看到相关日志。
从串口查看日志发现重启前logcat和内核日志有如下日志 12-2[ 407.566214][0 T6256 d.] Internal error: BRK handler: f2005512 [#1] PREEMPT SMP
...
[ 409.545917][0 T6256 d.] Kernel panic - not syncing: BRK handler: Fatal exception从这个内核Kernel日志看BPK异常后就挂了。
百度查看了一下“Kernel panic - not syncing”这个异常是芯片启动异常。
对底层不熟悉不做进一步分析。
后续的分析和解决都是底层开发的协助完成的。
3、设备重启原因
8852bs在打开2.4G热点的时候wpa config文件中配置了80211ac就会重启
80211ac 是一种路由设置开启热点需要把自己的设备当成路由器所以底层要配置一写路由参数。
80211ac 配置是5G热点才能设置的。所以系统热点开启不能默认配置80211ac否则会异常。
三、解决方法
对wpa config配置文件修改了一下80211ac 属性只有在5G热点才配置。 b/release/XXX/common/wifi_bt/wifi/wpa_supplicant_8/hostapd/aidl/hostapd.cpp-699,7 699,7 std::string CreateHostapdConfig(iface_params.name.c_str(), ssid_as_string.c_str(),channel_config_as_string.c_str(),iface_params.hwModeParams.enable80211N ? 1 : 0,
- iface_params.hwModeParams.enable80211AC ? 1 : 0,(iface_params.hwModeParams.enable80211AC ((band band5Ghz) ! 0)) ? 1 : 0,he_params_as_string.c_str(),hw_mode_as_string.c_str(), ht_cap_vht_oper_he_oper_chwidth_as_string.c_str(),nw_params.isHidden ? 1 : 0,
从上面代码可以看到 最终修改就是把 enable80211AC 判断是5G网络时才配置。
上面的 wpa 目录是AML 供应商的目录一般系统的目录可能是在 external/wpa_supplicant_8
四、其他
1、wifi/有线网 代理信息也可能导致系统重启
设置代理信息需要填写端口号如果端口号超出范围也会导致系统重启。
网络端口号的范围是1-6553565535 是2的16次方是4个字节的存储空间。
具体报错是啥当的时没看因为比较好解所以未进行分析。
这里只要在应用中判断端口号范围即可解决该问题。
今天顺便测了一下发现这种情况只是sygoty重启了是有AndroidRuntime 的部分日志如下
01-05 18:23:41.261 1452 1452 D wpa_supplicant: nl80211: Deauthenticate event
01-05 18:23:41.261 1452 1452 D wpa_supplicant: nl80211: Ignore deauth event triggered due to own deauth request
01-05 18:23:41.261 1452 1452 D wpa_supplicant: nl80211: Event message available
01-05 18:23:41.262 1452 1452 D wpa_supplicant: nl80211: Drv Event 48 (NL80211_CMD_DISCONNECT) received for wlan0
01-05 18:23:41.262 1452 1452 D wpa_supplicant: nl80211: Ignore disconnect event when using userspace SME
01-05 18:23:41.265 1951 1951 D PinyinIME: onWindowHidden
01-05 18:23:41.272 1951 1951 D wdw : getScreenWidth 1260
01-05 18:23:41.272 1951 1951 D wdw : getHeightForCandidates mCandidatesAreaHeight50
01-05 18:23:41.273 889 1067 D WifiConfigurationUtil: Add upgradable SAE configuration.
--------- beginning of crash
01-05 18:23:41.276 889 1067 E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: WifiHandlerThread
01-05 18:23:41.276 889 1067 E AndroidRuntime: java.lang.IllegalArgumentException: Invalid ProxyInfo: [t] 888888 xly
01-05 18:23:41.276 889 1067 E AndroidRuntime: at android.net.wifi.WifiConfiguration.setHttpProxy(WifiConfiguration.java:3807)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiConfigManager.mergeWithInternalWifiConfiguration(WifiConfigManager.java:1164)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiConfigManager.updateExistingInternalWifiConfigurationFromExternal(WifiConfigManager.java:1284)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiConfigManager.addOrUpdateNetworkInternal(WifiConfigManager.java:1384)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiConfigManager.addOrUpdateNetwork(WifiConfigManager.java:1578)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiConfigManager.addOrUpdateNetwork(WifiConfigManager.java:1619)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiServiceImpl.lambda$connect$112(WifiServiceImpl.java:5899)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiServiceImpl.$r8$lambda$nNJamaVDTZuLL0j_quZy9fnDAw4(Unknown Source:0)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at com.android.server.wifi.WifiServiceImpl$$ExternalSyntheticLambda16.run(Unknown Source:12)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:942)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:201)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at android.os.Looper.loop(Looper.java:288)
01-05 18:23:41.276 889 1067 E AndroidRuntime: at android.os.HandlerThread.run(HandlerThread.java:67)
01-05 18:23:41.282 889 1067 I DropBoxManagerService: add tagsystem_server_crash isTagEnabledtrue flags0x2
01-05 18:23:41.287 889 1067 I Process : Sending signal. PID: 889 SIG: 9看了下日志没看出啥可能跟Hal层有点关系具体还需要进一步分析。
2、Android13 热点默认5G频道配置修改
这个是之前写的framework 上层代码的修改
https://blog.csdn.net/wenzhi20102321/article/details/135349837
3、Android 设置默认热点名称和热点密码、密码长度
https://blog.csdn.net/wenzhi20102321/article/details/127737534