Sub PreferMobileRouting(prefer As Boolean) As ResumableSub
Dim p As Phone
If p.SdkVersion >= 21 Then
' Else
' builder.RunMethod("addTransportType", Array(0))
' builder.RunMethod("addTransportType", Array(1))
' builder.RunMethod("addCapability", Array(12)) 'NetworkCapabilities.NET_CAPABILITY_INTERNET
' Log("NET_CAPABILITY_INTERNET")
If prefer Then
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim manager As JavaObject = ctxt.RunMethod("getSystemService", Array("connectivity"))
Dim builder As JavaObject
builder.InitializeNewInstance("android.net.NetworkRequest.Builder", Null)
builder.RunMethod("addTransportType", Array(0)) 'NetworkCapabilities.TRANSPORT_CELLULAR
Log("TRANSPORT_CELLULAR")
Dim event As JavaObject
event.InitializeNewInstance(Application.PackageName & ".main$NetworkCallback", Null)
manager.RunMethod("requestNetwork", Array(builder.RunMethod("build", Null), event))
Wait For network_available (Network As Object)
Log("Network found.")
Log(Network) '<--THIS ID CHANGES EVERY TIME THE MODEM RESTARTS OR RESETS
Dim cm As JavaObject
Return (cm.InitializeStatic("android.net.ConnectivityManager").RunMethod("setProcessDefaultNetwork", Array(Network)))
End If
End If
Return False
End Sub