Merge "Move NetworkCallback to last parameter for new exposed requestNetwork" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
3eb3c377b8
@@ -3693,29 +3693,29 @@ public class ConnectivityManager {
|
|||||||
/**
|
/**
|
||||||
* Helper function to request a network with a particular legacy type.
|
* Helper function to request a network with a particular legacy type.
|
||||||
*
|
*
|
||||||
* @deprecated This is temporarily public for tethering to backwards compatibility that uses
|
* This API is only for use in internal system code that requests networks with legacy type and
|
||||||
* the NetworkRequest API to request networks with legacy type and relies on
|
* relies on CONNECTIVITY_ACTION broadcasts instead of NetworkCallbacks. New caller should use
|
||||||
* CONNECTIVITY_ACTION broadcasts instead of NetworkCallbacks. New caller should use
|
|
||||||
* {@link #requestNetwork(NetworkRequest, NetworkCallback, Handler)} instead.
|
* {@link #requestNetwork(NetworkRequest, NetworkCallback, Handler)} instead.
|
||||||
*
|
*
|
||||||
* TODO: update said system code to rely on NetworkCallbacks and make this method private.
|
|
||||||
|
|
||||||
* @param request {@link NetworkRequest} describing this request.
|
* @param request {@link NetworkRequest} describing this request.
|
||||||
* @param networkCallback The {@link NetworkCallback} to be utilized for this request. Note
|
|
||||||
* the callback must not be shared - it uniquely specifies this request.
|
|
||||||
* @param timeoutMs The time in milliseconds to attempt looking for a suitable network
|
* @param timeoutMs The time in milliseconds to attempt looking for a suitable network
|
||||||
* before {@link NetworkCallback#onUnavailable()} is called. The timeout must
|
* before {@link NetworkCallback#onUnavailable()} is called. The timeout must
|
||||||
* be a positive value (i.e. >0).
|
* be a positive value (i.e. >0).
|
||||||
* @param legacyType to specify the network type(#TYPE_*).
|
* @param legacyType to specify the network type(#TYPE_*).
|
||||||
* @param handler {@link Handler} to specify the thread upon which the callback will be invoked.
|
* @param handler {@link Handler} to specify the thread upon which the callback will be invoked.
|
||||||
|
* @param networkCallback The {@link NetworkCallback} to be utilized for this request. Note
|
||||||
|
* the callback must not be shared - it uniquely specifies this request.
|
||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
@SystemApi
|
@SystemApi
|
||||||
@Deprecated
|
@RequiresPermission(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK)
|
||||||
public void requestNetwork(@NonNull NetworkRequest request,
|
public void requestNetwork(@NonNull NetworkRequest request,
|
||||||
@NonNull NetworkCallback networkCallback, int timeoutMs, int legacyType,
|
int timeoutMs, int legacyType, @NonNull Handler handler,
|
||||||
@NonNull Handler handler) {
|
@NonNull NetworkCallback networkCallback) {
|
||||||
|
if (legacyType == TYPE_NONE) {
|
||||||
|
throw new IllegalArgumentException("TYPE_NONE is meaningless legacy type");
|
||||||
|
}
|
||||||
CallbackHandler cbHandler = new CallbackHandler(handler);
|
CallbackHandler cbHandler = new CallbackHandler(handler);
|
||||||
NetworkCapabilities nc = request.networkCapabilities;
|
NetworkCapabilities nc = request.networkCapabilities;
|
||||||
sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, legacyType, cbHandler);
|
sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, legacyType, cbHandler);
|
||||||
@@ -3814,7 +3814,8 @@ public class ConnectivityManager {
|
|||||||
public void requestNetwork(@NonNull NetworkRequest request,
|
public void requestNetwork(@NonNull NetworkRequest request,
|
||||||
@NonNull NetworkCallback networkCallback, @NonNull Handler handler) {
|
@NonNull NetworkCallback networkCallback, @NonNull Handler handler) {
|
||||||
CallbackHandler cbHandler = new CallbackHandler(handler);
|
CallbackHandler cbHandler = new CallbackHandler(handler);
|
||||||
requestNetwork(request, networkCallback, 0, TYPE_NONE, cbHandler);
|
NetworkCapabilities nc = request.networkCapabilities;
|
||||||
|
sendRequestForNetwork(nc, networkCallback, 0, REQUEST, TYPE_NONE, cbHandler);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -3847,7 +3848,9 @@ public class ConnectivityManager {
|
|||||||
public void requestNetwork(@NonNull NetworkRequest request,
|
public void requestNetwork(@NonNull NetworkRequest request,
|
||||||
@NonNull NetworkCallback networkCallback, int timeoutMs) {
|
@NonNull NetworkCallback networkCallback, int timeoutMs) {
|
||||||
checkTimeout(timeoutMs);
|
checkTimeout(timeoutMs);
|
||||||
requestNetwork(request, networkCallback, timeoutMs, TYPE_NONE, getDefaultHandler());
|
NetworkCapabilities nc = request.networkCapabilities;
|
||||||
|
sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, TYPE_NONE,
|
||||||
|
getDefaultHandler());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -3873,7 +3876,8 @@ public class ConnectivityManager {
|
|||||||
@NonNull NetworkCallback networkCallback, @NonNull Handler handler, int timeoutMs) {
|
@NonNull NetworkCallback networkCallback, @NonNull Handler handler, int timeoutMs) {
|
||||||
checkTimeout(timeoutMs);
|
checkTimeout(timeoutMs);
|
||||||
CallbackHandler cbHandler = new CallbackHandler(handler);
|
CallbackHandler cbHandler = new CallbackHandler(handler);
|
||||||
requestNetwork(request, networkCallback, timeoutMs, TYPE_NONE, cbHandler);
|
NetworkCapabilities nc = request.networkCapabilities;
|
||||||
|
sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, TYPE_NONE, cbHandler);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -5400,6 +5400,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
public NetworkRequest requestNetwork(NetworkCapabilities networkCapabilities,
|
public NetworkRequest requestNetwork(NetworkCapabilities networkCapabilities,
|
||||||
Messenger messenger, int timeoutMs, IBinder binder, int legacyType,
|
Messenger messenger, int timeoutMs, IBinder binder, int legacyType,
|
||||||
@NonNull String callingPackageName) {
|
@NonNull String callingPackageName) {
|
||||||
|
if (legacyType != TYPE_NONE && !checkNetworkStackPermission()) {
|
||||||
|
throw new SecurityException("Insufficient permissions to specify legacy type");
|
||||||
|
}
|
||||||
final int callingUid = Binder.getCallingUid();
|
final int callingUid = Binder.getCallingUid();
|
||||||
final NetworkRequest.Type type = (networkCapabilities == null)
|
final NetworkRequest.Type type = (networkCapabilities == null)
|
||||||
? NetworkRequest.Type.TRACK_DEFAULT
|
? NetworkRequest.Type.TRACK_DEFAULT
|
||||||
|
|||||||
Reference in New Issue
Block a user