我們的Android裝置終端是支援有線接入的,現在有個需求是查詢裝置是否接入有線,查了下Android標準API沒有找到查詢有線接入與否的方法。後來與做系統的同事溝通,他告訴我可以透過
cat /sys/class/net/eth0/operstate
命令獲取,UP表示接入,DOWN表示未接入。
然後順便擴充套件查詢了下相關資料
在openwrt系統中,/sys/class/net/eth0資料夾的內容涉及到eth0網路卡的資訊。其中,eth0是指系統中的第一個乙太網網路卡。
該資料夾下的內容如下:
address:該檔案包含乙太網網路卡的MAC地址。
broadcast:該檔案包含當前乙太網網路卡的廣播地址。
carrier:該檔案用於檢測當前乙太網網路卡是否連線到了物理網路。可以透過讀取該檔案,判斷網路卡是否處於活動狀態。
dev_id:該檔案包含當前乙太網網路卡的唯一裝置ID。
dev_port:該檔案包含當前乙太網網路卡的埠號。
duplex:該檔案用於獲取當前乙太網網路卡的雙工模式(全雙工/半雙工)。
flags:該檔案包含乙太網網路卡當前的標誌位資訊。
ifalias:該檔案包含當前乙太網網路卡的別名(如果有)。
ifindex:該檔案包含當前乙太網網路卡在系統中的索引號。
iflink:該檔案包含當前乙太網網路卡對應的網路裝置檔案的裝置號。
link_mode:該檔案包含當前乙太網網路卡的連線模式(如:10/100/1000 Mbps)。
mtu:該檔案包含當前乙太網網路卡的最大傳輸單元(MTU)大小。
netdev_group:該檔案表示乙太網網路卡所屬的網路組。
operstate:該檔案包含乙太網網路卡的執行狀態資訊(如:UP表示網路卡已連線)。
phys_port_name:該檔案包含連線到乙太網網路卡的物理埠名稱。
總之,/sys/class/net/eth0資料夾下的所有檔案都與乙太網網路卡的硬體、配置和連線狀態相關聯,可以透過讀取這些檔案獲取有關乙太網網路卡的資訊。
另一個賬號 https://www.jianshu.com/u/d205eecfb809