Fix checkDefaultInterfaceUpdate
This commit is contained in:
@@ -43,17 +43,20 @@ object DefaultNetworkMonitor {
|
|||||||
private fun checkDefaultInterfaceUpdate(newNetwork: Network?) {
|
private fun checkDefaultInterfaceUpdate(newNetwork: Network?) {
|
||||||
val listener = listener ?: return
|
val listener = listener ?: return
|
||||||
if (newNetwork != null) {
|
if (newNetwork != null) {
|
||||||
val interfaceName =
|
|
||||||
(Application.connectivity.getLinkProperties(newNetwork) ?: return).interfaceName
|
|
||||||
for (times in 0 until 10) {
|
for (times in 0 until 10) {
|
||||||
|
val linkProperties = Application.connectivity.getLinkProperties(newNetwork)
|
||||||
|
if (linkProperties == null) {
|
||||||
|
Thread.sleep(100)
|
||||||
|
continue
|
||||||
|
}
|
||||||
var interfaceIndex: Int
|
var interfaceIndex: Int
|
||||||
try {
|
try {
|
||||||
interfaceIndex = NetworkInterface.getByName(interfaceName).index
|
interfaceIndex = NetworkInterface.getByName(linkProperties.interfaceName).index
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
Thread.sleep(100)
|
Thread.sleep(100)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
listener.updateDefaultInterface(interfaceName, interfaceIndex, false, false)
|
listener.updateDefaultInterface(linkProperties.interfaceName, interfaceIndex, false, false)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
listener.updateDefaultInterface("", -1, false, false)
|
listener.updateDefaultInterface("", -1, false, false)
|
||||||
|
|||||||
Reference in New Issue
Block a user