如果用户允许,我尝试通过移动连接提出请求。 我目前正在使用rofjava的retrofit2来处理请求,尽管只要用户有Wi-Fi和移动连接,选择哪个网络移动设备发出请求的唯一方法就是没有其他权限来更改网络,就像这样:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkRequest.Builder req = new NetworkRequest.Builder();
req.addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
cm.requestNetwork(req.build(), new ConnectivityManager.NetworkCallback() {
@Override
public void onAvailable(Network network) {
//do the request here
}
});
}
有没有办法使用多网络API进行改造或传递如上所述的NetworkRequest?
或唯一的是使用OkHttp或URLConnection手动执行请求?