[JS01]Remove hidden API usage of Connectivity Sevice

The Connectivity service will become the mainline module.
Therefore, remove the caller of using Connectivity's
hidden API outside the module and expose the required
connectivity API used in Jobscheduler.

Bug: 183456204
CTS-Coverage-Bug: 170598012
Test: atest JobStoreTest
Change-Id: Ie6bc81ff382fb242b98f35d28a96defc207c7987
Merged-In: Ie6bc81ff382fb242b98f35d28a96defc207c7987
           (cherry-picked from ag/13946348)
This commit is contained in:
lifr
2021-03-11 20:11:09 +08:00
parent 029dcce041
commit 42a60c2ebc
4 changed files with 44 additions and 2 deletions

View File

@@ -1189,8 +1189,7 @@ public class ConnectivityManager {
*
* @return a {@link Network} object for the current default network for the
* given UID or {@code null} if no default network is currently active
*
* @hide
* TODO: b/183465229 Cleanup getActiveNetworkForUid once b/165835257 is fixed
*/
@RequiresPermission(android.Manifest.permission.NETWORK_STACK)
@Nullable

View File

@@ -699,4 +699,43 @@ public class NetworkRequest implements Parcelable {
public int hashCode() {
return Objects.hash(requestId, legacyType, networkCapabilities, type);
}
/**
* Gets all the capabilities set on this {@code NetworkRequest} instance.
*
* @return an array of capability values for this instance.
*/
@NonNull
public @NetCapability int[] getCapabilities() {
// No need to make a defensive copy here as NC#getCapabilities() already returns
// a new array.
return networkCapabilities.getCapabilities();
}
/**
* Gets all the unwanted capabilities set on this {@code NetworkRequest} instance.
*
* @return an array of unwanted capability values for this instance.
*
* @hide
*/
@NonNull
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
public @NetCapability int[] getUnwantedCapabilities() {
// No need to make a defensive copy here as NC#getUnwantedCapabilities() already returns
// a new array.
return networkCapabilities.getUnwantedCapabilities();
}
/**
* Gets all the transports set on this {@code NetworkRequest} instance.
*
* @return an array of transport type values for this instance.
*/
@NonNull
public @Transport int[] getTransportTypes() {
// No need to make a defensive copy here as NC#getTransportTypes() already returns
// a new array.
return networkCapabilities.getTransportTypes();
}
}