Add PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES API

This string allows apps add a network_capabilities.xml resource to the
AndroidManifest.xml.

The network_capabilities.xml file will allow application developers to
request for a network capabilities that they want their application to
be able to use. The available capabilities are defined in
ApplicationNetworkCapabilities.java.

Test: atest FrameworksNetTests CtsHostsideNetworkTests
Bug: 266524688
Change-Id: I99b0698748af3cfafa0ff84df0454584dbad88b1
This commit is contained in:
Yuyang Huang
2023-02-06 12:09:39 +09:00
parent 699ad68d12
commit 2a1fee4927
2 changed files with 24 additions and 0 deletions

View File

@@ -12671,6 +12671,7 @@ package android.content.pm {
field public static final int PERMISSION_DENIED = -1; // 0xffffffff field public static final int PERMISSION_DENIED = -1; // 0xffffffff
field public static final int PERMISSION_GRANTED = 0; // 0x0 field public static final int PERMISSION_GRANTED = 0; // 0x0
field public static final String PROPERTY_MEDIA_CAPABILITIES = "android.media.PROPERTY_MEDIA_CAPABILITIES"; field public static final String PROPERTY_MEDIA_CAPABILITIES = "android.media.PROPERTY_MEDIA_CAPABILITIES";
field public static final String PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES = "android.net.PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES";
field public static final String PROPERTY_SPECIAL_USE_FGS_SUBTYPE = "android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE"; field public static final String PROPERTY_SPECIAL_USE_FGS_SUBTYPE = "android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE";
field public static final int SIGNATURE_FIRST_NOT_SIGNED = -1; // 0xffffffff field public static final int SIGNATURE_FIRST_NOT_SIGNED = -1; // 0xffffffff
field public static final int SIGNATURE_MATCH = 0; // 0x0 field public static final int SIGNATURE_MATCH = 0; // 0x0

View File

@@ -150,6 +150,29 @@ public abstract class PackageManager {
public static final String PROPERTY_MEDIA_CAPABILITIES = public static final String PROPERTY_MEDIA_CAPABILITIES =
"android.media.PROPERTY_MEDIA_CAPABILITIES"; "android.media.PROPERTY_MEDIA_CAPABILITIES";
/**
* <application> level {@link android.content.pm.PackageManager.Property} tag
* specifying the XML resource ID containing the declaration of the self-certified network
* capabilities used by the application.
*
* <p> Starting from Android 14, usage of some network capabilities in
* {@link android.net.ConnectivityManager#requestNetwork} require the application to
* declare its usage of that particular capability in this resource. Only some capabilities
* require a declaration. Please look up the specific capability you want to use in
* {@link android.net.NetworkCapabilities} to see if it needs declaration in this property.
*
* For example:
* &lt;application&gt;
* &lt;property android:name="android.net.PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES"
* android:resource="@xml/self_certified_network_capabilities"&gt;
* &lt;application&gt;
*
* <p> The detail format of self_certified_network_capabilities.xml is described in
* {@link android.net.NetworkRequest}
*/
public static final String PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES =
"android.net.PROPERTY_SELF_CERTIFIED_NETWORK_CAPABILITIES";
/** /**
* Application level property that an app can specify to opt-out from having private data * Application level property that an app can specify to opt-out from having private data
* directories both on the internal and external storages. * directories both on the internal and external storages.