我正在开发一个应用程序,它必须通过移动数据发出所有网络请求,即使它已连接到wifi。问题是Android出于显而易见的原因,在连接到wifi时会关闭移动数据。
我试图列出所有的网络接口,所以我可以使用正确的接口,但是,当在wifi上时,rmnet0接口甚至从列表中消失(至少在三星S8上。我尝试使用OnePlus但它没有' t消失,但它没有上升。)
有没有办法做到这一点,无论是使用Kotlin还是使用NDK(C / C ++)?
答案 0 :(得分:0)
你可以做的一件事是禁用wifi。如果您拥有android.permission.CHANGE_WIFI_STATE
权限,则可以programmatically in Android完成。
WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
wifiManager.setWifiEnabled(isWifiEnabled);
禁用wifi后,手机应切换回移动数据。正如评论中已经说明的那样,这可能会给用户带来额外的成本,而您可能希望尝试改善对wifi的响应。