安卓以太网链路检测

文章:
https://blog.csdn.net/IT_xiao_bai0516/article/details/122129925
image

SOC MAC驱动:
drivers/net/phy/phylink.c

PHY驱动:
厂商提供

SOC-RGMII-PHY方式,需要确认时钟

安卓层:
获取状态过程:

  • packages/modules/Connectivity/framework-t/src/android/net/EthernetManager.java

    • EthernetManager isAvailable 上层:提供给应用接口
  • packages/modules/Connectivity/service-t/src/com/android/server/ethernet/EthernetServiceImpl.java

    • EthernetService isAvailable 服务层
     mTracker.isTrackingInterface(iface);	
    
  • packages/modules/Connectivity/service-t/src/com/android/server/ethernet/EthernetTracker.java

    • isTrackingInterface return mFactory.hasInterface(iface);
  • packages/modules/Connectivity/service-t/src/com/android/server/ethernet/EthernetNetworkFactory.java

    • hasInterface return mTrackingInterfaces.containsKey(ifaceName);

更新状态过程:

  • packages/modules/Connectivity/service-t/src/com/android/server/ethernet/EthernetNetworkFactory.java
    • EthernetNetworkFactory updateInterfaceLinkState 最后会更新键值

原生Settings

packages/apps/Settings/src/com/android/settings/network/telephony/NetworkSelectSettings.java
控件

public boolean onPreferenceTreeClick(Preference preference) {
posted @ 2025-12-03 16:21  蓝天上的云℡  阅读(2)  评论(0)    收藏  举报