blob: 8eef552ba13b6208307fdac341815b739c90c19a [file] [log] [blame]
paulhu802ab972021-12-14 01:30:22 +00001// Signature format: 2.0
Junyu Laieb6f4be2022-01-17 11:52:57 +00002package android.app.usage {
3
4 public class NetworkStatsManager {
5 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void forceUpdate();
6 method public static int getCollapsedRatType(int);
junyulaidd1d0242022-03-01 17:08:01 +08007 method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.net.NetworkStats getMobileUidStats();
8 method @NonNull @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public android.net.NetworkStats getWifiUidStats();
Aaron Huang54172802022-03-10 17:57:12 +08009 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void noteUidForeground(int, boolean);
Junyu Laieb6f4be2022-01-17 11:52:57 +000010 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void notifyNetworkStatus(@NonNull java.util.List<android.net.Network>, @NonNull java.util.List<android.net.NetworkStateSnapshot>, @Nullable String, @NonNull java.util.List<android.net.UnderlyingNetworkInfo>);
11 method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForDevice(@NonNull android.net.NetworkTemplate, long, long);
12 method @NonNull @WorkerThread public android.app.usage.NetworkStats queryDetailsForUidTagState(@NonNull android.net.NetworkTemplate, long, long, int, int, int) throws java.lang.SecurityException;
13 method @NonNull @WorkerThread public android.app.usage.NetworkStats querySummary(@NonNull android.net.NetworkTemplate, long, long) throws java.lang.SecurityException;
14 method @NonNull @WorkerThread public android.app.usage.NetworkStats.Bucket querySummaryForDevice(@NonNull android.net.NetworkTemplate, long, long);
15 method @NonNull @WorkerThread public android.app.usage.NetworkStats queryTaggedSummary(@NonNull android.net.NetworkTemplate, long, long) throws java.lang.SecurityException;
Frankeeeb76d2022-02-05 14:59:05 +080016 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}, conditional=true) public void registerUsageCallback(@NonNull android.net.NetworkTemplate, long, @NonNull java.util.concurrent.Executor, @NonNull android.app.usage.NetworkStatsManager.UsageCallback);
Junyu Laieb6f4be2022-01-17 11:52:57 +000017 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setDefaultGlobalAlert(long);
Remi NGUYEN VAN73a61e72022-02-03 11:32:46 +090018 method public void setPollForce(boolean);
Junyu Laieb6f4be2022-01-17 11:52:57 +000019 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setPollOnOpen(boolean);
20 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void setStatsProviderWarningAndLimitAsync(@NonNull String, long, long);
Junyu Laieb6f4be2022-01-17 11:52:57 +000021 field public static final int NETWORK_TYPE_5G_NSA = -2; // 0xfffffffe
22 }
23
24 public abstract static class NetworkStatsManager.UsageCallback {
25 method public void onThresholdReached(@NonNull android.net.NetworkTemplate);
26 }
27
28}
29
paulhu802ab972021-12-14 01:30:22 +000030package android.net {
31
32 public final class ConnectivityFrameworkInitializerTiramisu {
33 method public static void registerServiceWrappers();
34 }
35
Xiao Ma0a171c02022-01-23 16:14:51 +000036 public class EthernetManager {
markchiene1cde262022-03-17 16:34:20 +080037 method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void addEthernetStateListener(@NonNull java.util.concurrent.Executor, @NonNull java.util.function.IntConsumer);
Xiao Ma0a171c02022-01-23 16:14:51 +000038 method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void addInterfaceStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.InterfaceStateListener);
Xiao Mabdfed342022-03-17 05:58:28 +000039 method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public java.util.List<java.lang.String> getInterfaceList();
markchiene1cde262022-03-17 16:34:20 +080040 method @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public void removeEthernetStateListener(@NonNull java.util.function.IntConsumer);
Xiao Ma0a171c02022-01-23 16:14:51 +000041 method public void removeInterfaceStateListener(@NonNull android.net.EthernetManager.InterfaceStateListener);
markchiene1cde262022-03-17 16:34:20 +080042 method @RequiresPermission(anyOf={android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK, android.Manifest.permission.NETWORK_SETTINGS}) public void setEthernetEnabled(boolean);
Xiao Ma0a171c02022-01-23 16:14:51 +000043 method public void setIncludeTestInterfaces(boolean);
markchiene1cde262022-03-17 16:34:20 +080044 field public static final int ETHERNET_STATE_DISABLED = 0; // 0x0
45 field public static final int ETHERNET_STATE_ENABLED = 1; // 0x1
Xiao Ma0a171c02022-01-23 16:14:51 +000046 field public static final int ROLE_CLIENT = 1; // 0x1
47 field public static final int ROLE_NONE = 0; // 0x0
48 field public static final int ROLE_SERVER = 2; // 0x2
49 field public static final int STATE_ABSENT = 0; // 0x0
50 field public static final int STATE_LINK_DOWN = 1; // 0x1
51 field public static final int STATE_LINK_UP = 2; // 0x2
52 }
53
54 public static interface EthernetManager.InterfaceStateListener {
55 method public void onInterfaceStateChanged(@NonNull String, int, int, @Nullable android.net.IpConfiguration);
56 }
57
Aaron Huang2e778ee2022-01-06 19:30:43 +080058 public class IpSecManager {
59 field public static final int DIRECTION_FWD = 2; // 0x2
60 }
61
62 public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable {
63 method public int getResourceId();
64 }
65
Junyu Laieb6f4be2022-01-17 11:52:57 +000066 public class NetworkIdentity {
67 method public int getOemManaged();
68 method public int getRatType();
lifr8ba46d82021-11-18 02:37:28 +080069 method public int getSubId();
Junyu Laieb6f4be2022-01-17 11:52:57 +000070 method @Nullable public String getSubscriberId();
71 method public int getType();
72 method @Nullable public String getWifiNetworkKey();
73 method public boolean isDefaultNetwork();
74 method public boolean isMetered();
75 method public boolean isRoaming();
76 }
77
78 public static final class NetworkIdentity.Builder {
79 ctor public NetworkIdentity.Builder();
80 method @NonNull public android.net.NetworkIdentity build();
81 method @NonNull public android.net.NetworkIdentity.Builder clearRatType();
82 method @NonNull public android.net.NetworkIdentity.Builder setDefaultNetwork(boolean);
83 method @NonNull public android.net.NetworkIdentity.Builder setMetered(boolean);
84 method @NonNull public android.net.NetworkIdentity.Builder setNetworkStateSnapshot(@NonNull android.net.NetworkStateSnapshot);
85 method @NonNull public android.net.NetworkIdentity.Builder setOemManaged(int);
86 method @NonNull public android.net.NetworkIdentity.Builder setRatType(int);
87 method @NonNull public android.net.NetworkIdentity.Builder setRoaming(boolean);
lifr8ba46d82021-11-18 02:37:28 +080088 method @NonNull public android.net.NetworkIdentity.Builder setSubId(int);
Junyu Laieb6f4be2022-01-17 11:52:57 +000089 method @NonNull public android.net.NetworkIdentity.Builder setSubscriberId(@Nullable String);
90 method @NonNull public android.net.NetworkIdentity.Builder setType(int);
91 method @NonNull public android.net.NetworkIdentity.Builder setWifiNetworkKey(@Nullable String);
92 }
93
94 public final class NetworkStateSnapshot implements android.os.Parcelable {
95 ctor public NetworkStateSnapshot(@NonNull android.net.Network, @NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties, @Nullable String, int);
96 method public int describeContents();
97 method public int getLegacyType();
98 method @NonNull public android.net.LinkProperties getLinkProperties();
99 method @NonNull public android.net.Network getNetwork();
100 method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
lifr8ba46d82021-11-18 02:37:28 +0800101 method public int getSubId();
102 method @Deprecated @Nullable public String getSubscriberId();
Junyu Laieb6f4be2022-01-17 11:52:57 +0000103 method public void writeToParcel(@NonNull android.os.Parcel, int);
104 field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStateSnapshot> CREATOR;
105 }
106
junyulaidd1d0242022-03-01 17:08:01 +0800107 public final class NetworkStats implements java.lang.Iterable<android.net.NetworkStats.Entry> android.os.Parcelable {
108 method @NonNull public java.util.Iterator<android.net.NetworkStats.Entry> iterator();
109 }
110
111 public static class NetworkStats.Entry {
112 method public int getDefaultNetwork();
113 method public int getMetered();
114 method public long getOperations();
115 method public int getRoaming();
116 method public long getRxBytes();
117 method public long getRxPackets();
118 method public int getSet();
119 method public int getTag();
120 method public long getTxBytes();
121 method public long getTxPackets();
122 method public int getUid();
123 }
124
Junyu Laieb6f4be2022-01-17 11:52:57 +0000125 public class NetworkStatsCollection {
126 method @NonNull public java.util.Map<android.net.NetworkStatsCollection.Key,android.net.NetworkStatsHistory> getEntries();
127 }
128
129 public static final class NetworkStatsCollection.Builder {
130 ctor public NetworkStatsCollection.Builder(long);
131 method @NonNull public android.net.NetworkStatsCollection.Builder addEntry(@NonNull android.net.NetworkStatsCollection.Key, @NonNull android.net.NetworkStatsHistory);
132 method @NonNull public android.net.NetworkStatsCollection build();
133 }
134
Frank349fadf2022-03-07 16:31:26 +0800135 public static final class NetworkStatsCollection.Key {
Junyu Laieb6f4be2022-01-17 11:52:57 +0000136 ctor public NetworkStatsCollection.Key(@NonNull java.util.Set<android.net.NetworkIdentity>, int, int, int);
137 }
138
139 public final class NetworkStatsHistory implements android.os.Parcelable {
140 method public int describeContents();
141 method @NonNull public java.util.List<android.net.NetworkStatsHistory.Entry> getEntries();
142 method public void writeToParcel(@NonNull android.os.Parcel, int);
143 field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkStatsHistory> CREATOR;
144 }
145
146 public static final class NetworkStatsHistory.Builder {
147 ctor public NetworkStatsHistory.Builder(long, int);
148 method @NonNull public android.net.NetworkStatsHistory.Builder addEntry(@NonNull android.net.NetworkStatsHistory.Entry);
149 method @NonNull public android.net.NetworkStatsHistory build();
150 }
151
152 public static final class NetworkStatsHistory.Entry {
153 ctor public NetworkStatsHistory.Entry(long, long, long, long, long, long, long);
154 method public long getActiveTime();
155 method public long getBucketStart();
156 method public long getOperations();
157 method public long getRxBytes();
158 method public long getRxPackets();
159 method public long getTxBytes();
160 method public long getTxPackets();
161 }
162
163 public final class NetworkTemplate implements android.os.Parcelable {
164 method public int describeContents();
165 method public int getDefaultNetworkStatus();
166 method public int getMatchRule();
167 method public int getMeteredness();
168 method public int getOemManaged();
169 method public int getRatType();
170 method public int getRoaming();
171 method @NonNull public java.util.Set<java.lang.String> getSubscriberIds();
172 method @NonNull public java.util.Set<java.lang.String> getWifiNetworkKeys();
173 method public boolean matches(@NonNull android.net.NetworkIdentity);
174 method public void writeToParcel(@NonNull android.os.Parcel, int);
175 field @NonNull public static final android.os.Parcelable.Creator<android.net.NetworkTemplate> CREATOR;
176 field public static final int MATCH_BLUETOOTH = 8; // 0x8
177 field public static final int MATCH_CARRIER = 10; // 0xa
178 field public static final int MATCH_ETHERNET = 5; // 0x5
179 field public static final int MATCH_MOBILE = 1; // 0x1
Lorenzo Colitti9e066c92022-02-04 03:08:12 +0900180 field public static final int MATCH_PROXY = 9; // 0x9
Junyu Laieb6f4be2022-01-17 11:52:57 +0000181 field public static final int MATCH_WIFI = 4; // 0x4
182 field public static final int NETWORK_TYPE_ALL = -1; // 0xffffffff
183 field public static final int OEM_MANAGED_ALL = -1; // 0xffffffff
184 field public static final int OEM_MANAGED_NO = 0; // 0x0
185 field public static final int OEM_MANAGED_PAID = 1; // 0x1
186 field public static final int OEM_MANAGED_PRIVATE = 2; // 0x2
187 field public static final int OEM_MANAGED_YES = -2; // 0xfffffffe
188 }
189
190 public static final class NetworkTemplate.Builder {
191 ctor public NetworkTemplate.Builder(int);
192 method @NonNull public android.net.NetworkTemplate build();
193 method @NonNull public android.net.NetworkTemplate.Builder setDefaultNetworkStatus(int);
194 method @NonNull public android.net.NetworkTemplate.Builder setMeteredness(int);
195 method @NonNull public android.net.NetworkTemplate.Builder setOemManaged(int);
196 method @NonNull public android.net.NetworkTemplate.Builder setRatType(int);
197 method @NonNull public android.net.NetworkTemplate.Builder setRoaming(int);
198 method @NonNull public android.net.NetworkTemplate.Builder setSubscriberIds(@NonNull java.util.Set<java.lang.String>);
199 method @NonNull public android.net.NetworkTemplate.Builder setWifiNetworkKeys(@NonNull java.util.Set<java.lang.String>);
200 }
201
202 public class TrafficStats {
203 method public static void attachSocketTagger();
204 method public static void init(@NonNull android.content.Context);
junyulaidd1d0242022-03-01 17:08:01 +0800205 method public static void setThreadStatsTagDownload();
Junyu Laieb6f4be2022-01-17 11:52:57 +0000206 }
207
208 public final class UnderlyingNetworkInfo implements android.os.Parcelable {
209 ctor public UnderlyingNetworkInfo(int, @NonNull String, @NonNull java.util.List<java.lang.String>);
210 method public int describeContents();
211 method @NonNull public String getInterface();
212 method public int getOwnerUid();
213 method @NonNull public java.util.List<java.lang.String> getUnderlyingInterfaces();
214 method public void writeToParcel(@NonNull android.os.Parcel, int);
215 field @NonNull public static final android.os.Parcelable.Creator<android.net.UnderlyingNetworkInfo> CREATOR;
216 }
217
paulhu802ab972021-12-14 01:30:22 +0000218}
219