自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(157)
  • 资源 (9)
  • 问答 (1)
  • 收藏
  • 关注

原创 WiFi6 速率表

2023-12-24 10:27:03 419

原创 频段 信道 频率

在一个频段内,可以有多个不同的信道,每个信道都有自己的中心频率。例如,在2.4GHz频段内,信道1的中心频率是2.412GHz,信道6的中心频率是2.437GHz。频段(band)是指一定范围内的频率集合,例如2.4GHz到2.5GHz的频段。在无线通信中,不同的频段可以用于不同的通信标准或应用,例如2.4GHz频段通常用于Wi-Fi和蓝牙通信,而5GHz频段则用于更高速的Wi-Fi通信。例如,在2.4GHz频段内,有多个不同的信道可供选择,每个信道都有自己的中心频率和带宽。

2023-12-24 10:25:08 428

原创 Windows C盘分区扩容

用DiskGenius软件进行无损扩容分区,操作起来更为方便,并且能够尽可能的做到无损扩容分区,将其他分区中的空闲空间转移到空间不足的分区上,不会影响现有数据。

2023-12-24 09:47:10 441

原创 Wi-Fi物理层协议

Wi-Fi物理层协议包括以下内容:

2023-08-07 15:22:31 520 1

原创 Ubuntu 18.4 升级python以后终端打不开

ModuleNotFoundError:No module named'gi'

2022-06-29 10:22:07 809 1

原创 Android11 Wifi连接流程之IP地址分配

在Android11 wifi连接流程中我们代码跟踪到了supplicant中开始associate,关联成功以后就是四次握手然后连接成功。连接成功以后还需要分配IP地址,才可以通信,这一节我们看一下IP地址的获取流程。一、在ClientModeImpl中有一个函数startIpClient。这个函数会在俩个地方被调用,一个是连接的时候ConnectModeState,一个是连接成功以后进入ObtainingIpState。这俩个地方的区别就是isFilsConnection的不同,连接过程中isFils

2021-09-10 17:29:43 2943 4

原创 Android11 WiFi连接流程梳理

梳理一下Android11的wifi连接流程。一、可以看到点击连接以后,如果config不为null,则先保存网络,再进行连接,所以即使连接失败,此网络依然在已保存网络列表里。packages/apps/Settings/src/com/android/settings/wifi/WifiSettings.javavoid submit(WifiConfigController configController) { final WifiConfiguration config = conf

2021-09-10 10:52:49 9233 2

原创 Android11 DHCP初识

先简单说一下DHCP过程,对于代码理解会有帮助。1、客户端发起Discover,来寻找DHCP服务器2、DHCPServer给Clinet发送offer3、DHCPClient接受Offer以后发送DHCPRequest4、DHCPServer发送packet ack表示可以用此IP,结束。客户端代码主要在DhcpClient.java中。里面有一个状态机。frameworks/base/packages/NetworkStack/src/android/net/dhcp/DhcpClient.

2021-09-07 14:01:00 3375

原创 Android11 WAPI证书安装流程

最近遇到几个WAPI证书安装的问题,看了几天WAPI的相关代码,这里总结一下。Android中WAPI证书管理虽然在设置中,但是他是一个单独的app,在packages/apps/WapiCertManage下面。一、点击WAPI证书管理,会进入这个activity。然后点击右上角加载证书。packages/apps/WapiCertManage/src/com/wapi/wapicertmanage/WapiCertManageActivity.javapublic boolean onOptio

2021-08-05 19:10:45 5317

原创 Android 11 WiFi扫描流程梳理

上一篇我们梳理了WiFi的开启流程,Android11 WiFi开启流程,在最后我们说到ActiveModeWarden中注册了ClientListener监听器。我们接着这个逻辑继续梳理一下打开WiFi以后的扫描流程。一、WiFi打开以后,ClientListener会监听到,这时候会更新扫描状态。frameworks/opt/net/wifi/service/java/com/android/server/wifi/ActiveModeWarden.javaprivate class Client

2021-07-19 11:16:35 4111 4

原创 Android 11 WiFi开启流程

从刚接触WiFi时跟过wifi的开启流程,当时还是android9。到了Android11代码架构有了不小的改动,在这里重新梳理一遍,便于在工作中更快速的跟踪代码。一、Settings里改动不大,还是从WifiEnabler开始,调用WiFiManager的setWifiEnabled。packages/apps/Settings/src/com/android/settings/wifi/WifiEnabler.javaif (!mWifiManager.setWifiEnabled(isCheck

2021-07-16 09:10:41 10694 18

原创 Android系统模块编译命令

9.0:编译 wpa_supplicant make wpa_supplicant /vendor/bin/hw/wpa_supplicant编译 /frameworks/opt/net/wifi/service/ make wifi-service /system/framework/wifi-service.jar编译/framrwork/ make framework11.0编译 wpa_supplicant make wpa_supplicant

2021-05-27 15:59:50 976 1

原创 Wireshark, Sniffer and Omnipeek 三款网络分析工具的比较

一、 网络分析软件概述自从网络出现以来,网络故障就没有停止过。如何快速、准确地定位故障和保持网络的稳定运行一直是人们追求的目标。为了分析网络故障的原因,一类专业的网络分析软件便产生了。网络分析软件充当了网络程序错误的检修工具,开发人员使用它发现协议开发中的BUG,很多人使用它监听网络数据,同时也是检查安全类软件的辅助工具。网络分析软件从产生到现在已经经历了三个阶段:第一阶段是抓包和解码阶段。早期的网络规模比较小、结构比较简单,因此网络分析软件主要是把网络上的数据包抓下来,然后进行解码,以此

2021-03-31 09:32:25 2409

原创 error: Missing nullability on parameter `cfg_cmd` in method 报错解决

最近做从android9.0到11.0的代码移植工作,需要在WifiManager.java中添加接口,添加以后编译报错:frameworks/base/wifi/java/android/net/wifi/WifiManager.java:5703: error: Missing nullability on parameter `cmd` in method `****` [MissingNullability]frameworks/base/wifi/java/android/net/wifi/W

2021-02-26 15:06:27 4358 1

原创 adb命令判断手机是user版本还是debug版本

手机研发中看手机是user版本还是userdebug或是eng版本有时候版本号里面没有显示是user还是debug,可以通过命令看:adb shell getprop ro.build.type就可以看到对应的值了,就是当前的版本

2021-01-29 16:48:39 5467

转载 深度:一文看懂Linux内核!Linux内核架构和工作原理详解

简介作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。目前支持模块的动态装卸(裁剪)。Linux内核就是基于这个策略实现的。Linux进程1.采用层次结构,每个进程都依赖于一个父进程。内核启动init程序作为第一个进程。该进程负责进一步的系统初始化操作。init进程是进程树的根,所有的进程都直接或者间接起源于该进程。virt/ ---- 提供虚拟机技术的支持。Linux内核预备工作理解Linux内核最好预备的知识点:懂C语言懂一点操作系统的知识熟悉少量相关算

2021-01-25 11:31:43 748

原创 wpa_supplicant状态机

wpa_supplicant状态机像WAPI、EAP之类在关联之前也会进行认证。DISCONNECTED 此状态表明客户端未关联,但是可能开始寻找接入点。 连接断开时进入此状态。INACTIVE 如果没有启用的网络,则进入此状态, wpa_supplicant没有尝试与新的网络和外部互动,wpa_supplicant是disabledINTERFACE_DISABLED 如果禁用网络接口,则进入此状态。 wpa_supplicant拒绝任何会使用无线电,直到启用接口为止。AUTH

2021-01-15 15:10:02 1653

原创 WiFi的2.4G、5G、6G频段

目前WiFi已经推出了6G频段,Android源码中也增加了相关的功能,这里总结一下。2.4G一共分为14个信道(1-14),从2412到2484,每个信道的有效宽度是 20MHz,另外还有2MHz的强制隔离频带(类似于公路上的隔离带)。即,对于中心频率为 2412 MHz 的1信道,其频率范围为2401~2423MHz。5G一共有60个信道(32-173),从5160到5865,在中国支持的5G信道为36 38 40 44 46 48 52 54 56 60 62 64,后六个是DFS。6G为1-2

2021-01-14 18:00:00 46260 4

原创 WAPI-PSK环境搭建

设备:华为AP6010DN-AGN一台 console调试线一根 终端仿真软件一、通过Console口登录AR设备(1).使用终端仿真软件通过Console口登录设备。使用Console通信电缆(或自己购买的Console线缆)的DB9(孔)插头插入PC机的9芯(针)串口插座,再将RJ-45插头端插入设备的Console口中。(也有RJ45直接转USB的)(2).在PC上打开终端仿真软件IPOP。选择终端工具,点击开始,设置IPOP连接的接口以及通信参数。说明:a.除端口外,其他参数请与

2021-01-14 13:22:21 1195

原创 Android11 WiFi相关代码改动记录

Android11已经发布,WiFi相关代码改动不大,在这里记录一下,方便日后做开发。WifiConfiguration新增构造函数:WifiConfiguration(WifiConfiguration)新增方法:String getKey() 返回可用于唯一标识此WifiConfiguration的字符串,ssid+安全类型void setSecurityParams(int) 将各种安全性参数设置为与提供的安全性类型相对应。新增变量:int SECURITY_TYPE_EAPint

2021-01-14 11:23:31 3658 3

原创 wpa_supplicant详解

1.wpa_supplicant介绍WPA是WiFi Protected Access的缩写,中文含义为“WiFi网络安全存取”。WPA是一种基于标准的可互操作的WLAN安全性增强解决方案,可大大增强现有以及未来无线局域网络的数据保护和访问控制水平。wpa_supplicant是一个开源项目,已经被移植到Linux,Windows以及很多嵌入式系统上。它是WPA的应用层认证客户端,负责完成认证相关的登录、加密等工作。wpa_supplicant是一个 独立运行的 守护进程,其核心是一个消息循环,在消息

2021-01-06 17:56:47 5154 1

原创 wlan macaddress加载

高通平台wlan macaddress加载有5种方式:WCN39x0 supports below 5 ways to configure MAC address:• wlan_mac.bin• NV#4678• bdwlan.bin (BDF)• WCNSS_qcom_cfg.ini• Random generate from S/NPriority: wlan_mac.bin > NV#4678 > bdwlan.bin > INI > random MAC/mo

2020-10-10 15:05:56 1158 1

原创 高通平台如何使用QPST抓DUMP

手动强制进入dump的脚本手机系统死机白屏后,使用USB线 连接手机和计算机。打开计算机设备管理器 ,当其中与手机相关的端口只有DIAG 口 项(9006端口)时,表明手机处于DUMP 模式,可以抓DUMP LOG.注意Diag口为死机端口Dol端口为下载端口二 : 抓取DUMP LOG打开 QPST Configuration 软件,该软件 会自动抓DUMP LOG. 其中 Ports 项显示手机状态是 Sahara Memory Dump 。DUMP LOG 抓完后手机会自动重启。三 提

2020-09-05 10:27:37 2211

原创 NFC配置文件保存路径

NFC配置文件在手机中的保存路径:/vendor/etc/libnfc-mtp-SN100.conf代码路径:/vendor/qcom/proprietary/nqnfc-firmware/libnfc-mtp-SN100.conf

2020-08-20 17:39:12 4505

转载 WFD_RTSP交互包分析

在WFD交互过程中,在Source端或者Sink端抓取tcpdump,通过数据包分析软件Wireshark或者Omnipeek即可以直观的分析RTSP协议交互的过程。目录0.准备1.抓包2.包过滤3.包分析3.1 RTSP M1 MessageM1 RequestM1 Response3.2 RTSP M2 MessageM2 RequestM2 Response3.3 RTSP M3 MessageM3 RequestM3 Response3.4 RTSP M4 MessageM4 RequestM4

2020-08-11 17:55:21 671

转载 WifiDisplay(Miracast)技术原理及实现

WifiDisplay(Miracast)技术原理及实现文章目录WifiDisplay(Miracast)技术原理及实现1. WifiDisplay简介2. WifiDisplay协议流程3. WifiDisplay显示框架实现4. Android WifiDisplay实现4.1 Source端实现4.1.1 设备扫描及发现4.2 Sink端的实现4.2.1 设备如何被发现4.2.2 设备p2p连接后如何建立RTSP连接4.2.3 RTSP连接实现1. WifiDisplay简介Wi-Fi Disp

2020-08-11 16:13:55 7845 5

原创 直接通过手机抓取GPS的qxdm日志

不借助QXDM,直接通过手机抓取qxdm日志。主要用于测试GPS的时候使用,因为测试GPS大都需要在室外进行(室外卫星信号良好),并且GPS问题一般需要获取QXDM日志,在室外不能连接PC端使用QXDM客户端工具。adb shell mkdir /sdcard/diag_logsadb push gnss.cfg /sdcard/diag_logs/Diag.cfg_GNSS_Generic_2020.cfgadb shelldiag_mdlog -f /sdcard/diag_logs/Di

2020-08-04 10:07:29 1406 1

原创 连接部分蓝牙耳机播放音乐无声音(aptx)问题

1、问题描述问题原因:基线默认配置a2dp支持aptx、aptx-HD.hardware/qcom/audio/configs/msm8998/msm8998.mkPRODUCT_PROPERTY_OVERRIDES += persist.vendor.bt.a2dp_offload_cap=sbc-aptx-aptxhd-aac但是aptx、aptxhd编码格式的支持,需要Qcom license,也就是说,要使用该功能,需要付专利费。然而我们的产品没有买Qcom的license,相关功能也

2020-07-31 09:41:44 4345 2

原创 wpa_supplicant 框架

1.系统架构Android WiFi系统引入了wpa_supplicant,它的整个WiFi系统以wpa_supplicant为核心来定义上层用户接口和下层驱动接口。整个WiFi系统架构如下图所示:1.1 WifiService由SystemServer启动的时候生成的ConnecttivityService创建,负责启动关闭wpa_supplicant,启动和关闭WifiMonitor线程,把命令下发给wpa_supplicant以及更新WIFI的状态。处理其它模块通过IWifiManager接

2020-07-24 15:49:19 1514

原创 获取手机nfc的MW version 和 FW version 记录

/vendor/nxp/opensource/commonsys/packages/apps/Nfc/nci/jni/NativeNfcManager.cpp 中会打印NFC的版本信息。MW version static jboolean nfcManager_doInitialize(JNIEnv * e, jobject o) { initializeGlobalDebugEnabledFlag(); uint8_t switchToUiccSlot = 0;#if (NXP_E

2020-07-23 16:42:43 1557 1

原创 E: Sub-process /usr/bin/dpkg returned an error code (1) 解决方案

前言:apt-get install 安装软件时失败报错:E: Sub-process /usr/bin/dpkg returned an error code (1) 。从网上找到的解决办法,在这里记录一下。解决方法:现将info文件夹更名sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk新建一个新的info文件夹sudo mkdir /var/lib/dpkg/info安装修复sudo apt-get update$sudoapt-g

2020-07-21 14:12:04 1620 1

原创 adb shell读取设置手机ocd值以及ocd介绍

每个ocd数据对应一个索引值。 您可以使用index获取ocd数据。 OCD指标值枚举如下所示。enum ocd_lockable_table{magic_number = 0, //ocd.index.0magic_number_factory = 1, //ocd.index.1revision = 2, //ocd.index.2 and so on...system_ocd = 3,modem = 4,gps = 5,module_sn = 6,board_sn = 8,pr

2020-07-17 16:13:17 335

转载 高通 wlan 调试抓取日志大全

高通 wlan 调试总结随笔1. 进入ftm模式2. 抓取wifi log2.1 抓取 Android log2.1.1 How to enable wifi verbose log?2.1.2 How to collect adb log and kernel log in one file?2.1.3 How to open wpa_supplicant debug log?2.2 抓取 Tcpdump2.3 抓取 wifi driver log & FW log - for WCN36xx

2020-07-16 16:57:46 4068

原创 从wlan_mac.bin文件中读取MAC地址

/vendor/qcom/opensource/wlan/qcacld-3.0/Android.mkifeq ($(PRODUCT_VENDOR_MOVE_ENABLED),true)$(shell ln -sf /mnt/vendor/persist/wlan_mac.bin $(TARGET_OUT_VENDOR)/firmware/wlan/qca_cld/wlan_mac.bin)else$(shell ln -sf /mnt/vendor/persist/wlan_mac.bin $(TAR

2020-07-16 16:38:06 1929

原创 Linux文件权限修改

chmod 命令修改文件权限u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。+表示增加权限、- 表示取消权限、= 表示唯一设定权限。r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)将文件 file1.txt 设为所有人皆可读取 :chmod ugo+r file1.txt将文件

2020-07-16 16:17:13 381

原创 CE 认证 5G 干扰信号强度threshold修改

5G Adaptivity测试fail,添加干扰以后设备未立即响应,依旧有信号传输,干扰强度从-75加强到-67左右设备通过。解决方案:1> Change threshold/vendor/firmware_mnt/image/bdwlan.bin//2.4Gthr_cca_etsi_ovd_G_0_0 0x0thr_cca_pri20_G_0_0 0x0thr_cca_ext20_G_0_0 0x0thr_cca_ext40_G_0_0 0x0thr_cca_ext80_G_0_0

2020-07-07 10:30:55 1078 1

原创 Android开发必须知道的adb命令大全

Android adb 命令大全描述命令1、查询已连接设备/模拟器adb devices2、指定设备获取屏幕分辨率adb -s 设备号 shell wm size3、给指定设备安装应用adb -s 设备号 install test.apk4、启动 adb server 命令adb start-server5、停止 adb server 命令adb kill-server6、查看adb版本adb version7、指定 adb se

2020-06-30 11:09:20 552

原创 在软件测试中UT,IT,ST,UAT分别是什么意思

UT(Unit Test)即软件测试分类中的单bai元测试,它是对程序du中的最小可测单元zhi进行测试,一般理解的单元测试就是针dao对代码的测试,通常采用一些白盒测试方法来覆盖相关源代码,比如针对一个C语言中的函数、Java中的一个类,此种测试要求测试人员具备很强的编码能力,目前大多数公司采用的是开发自测;IT (System Integration Test)即软件测试分类中的集成测试,它是在单元测试的基础上,将软件的各单元(功能模块)按照概要设计说明书针对模块、子系统、系统的组装测试,以此来检验系

2020-06-29 18:06:39 7239

原创 EVT、DVT、PVT、MP是什么意思

扫码关注,一起学习PLM(Product Lifecycle Management)System:PLM是协助产品能够顺利完成在新产品开发(NPI:New Product Introduction),以及量产后的相关工程技术执行作业,大至分为五个阶段Planning(产品构想阶段).EVT(工程验证与测试阶段),DVT(设计验证与测试阶段),PVT(生产验证与测试阶段),MP(量产阶段)。EVT(Engineering Verification Test)工程验证测试阶段产品开发初期的设计验证。许

2020-06-29 14:39:51 30035

原创 WiFI Display 无线投屏花屏问题分析

最近遇到一个无线投屏的问题,就是手机端播放视频横竖屏切换时,TV侧就会短暂花屏,几秒后恢复正常。在这里总结一下WiFi Display花屏问题的分析步骤。首先需要看是偶尔花屏还是每次都会花屏。偶尔的花屏、卡顿是正常现象;连续的花屏、卡顿主要是由于无线干扰导致。这时候可以到屏蔽房进行测试,排除信号干扰的因素。如果在屏蔽房不会出现花屏,那就是信号干扰导致,这种情况下一般不做处理。如果在屏蔽房也会花屏,则排除信号干扰的原因。下一步要判断是WLAN的问题还是视频的问题。检查dump.ts的wifi显示,如

2020-06-22 11:06:56 6049 1

voldn-ps-hold - 7150.bat

手机进入dump并抓取dump日志.具体抓取步骤可以看我的博客...............................................

2020-09-05

Diag.cfg_GNSS_Generic_2020.cfg

不借助QXDM,直接通过手机抓取qxdm日志。主要用于测试GPS的时候使用,因为测试GPS大都需要在室外进行(室外卫星信号良好),并且GPS问题一般需要获取QXDM日志,在室外不能连接PC端使用QXDM客户端工具。

2020-08-04

UltraGPSLogger_com.flashlight.lite.gps.logger.apk

查看GPS详细信息的工具,可以看到正在使用的卫星信息与种类,还有每种卫星的个数,还可以抓取NEMA log。

2020-06-12

local.prop

GPS抓取log所需文件,放到手机/data/local.prop。如何执行adb shell chmod 644 /data/local.prop

2020-05-18

wireless-tools.tar.gz

移植wireless tool到Android,解决 /bin/sh:xx(命令) not found 的问题。

2020-04-23

cellular_z.apk

WiFi分析仪在Android9.0上不能用解决方案,可以用cellular_z来代替查看wifi信息

2020-04-15

Android通过热点实现俩个手机建立socket通信

Android通过热点实现俩个手机建立socket通信,然后互传数据,兼容9.0平台

2019-10-29

peek-1.2.2-0-x86_64.AppImage

Linux视频录制工具GIF工具,简单方便,直接下载然后给可执行权限就可以用了。

2019-09-25

598700 Wildpackets_Omnipeek_7.zip

OmniPeek安装包,大家可以直接下载,安装流程在我博客中有。

2019-09-15

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除