blob: b55166c30965d0644913027ca6f590a8ec6baeee [file] [log] [blame]
Jiyong Park13c923d2019-12-20 16:29:45 +09001// Signature format: 2.0
Makoto Onukibf03b1b2020-01-15 11:16:19 -08002package com.android.server {
3
Hai Zhangbd471872020-09-02 17:41:10 -07004 public final class LocalManagerRegistry {
5 method public static <T> void addManager(@NonNull Class<T>, @NonNull T);
6 method @Nullable public static <T> T getManager(@NonNull Class<T>);
7 }
8
Makoto Onukibf03b1b2020-01-15 11:16:19 -08009 public abstract class SystemService {
10 ctor public SystemService(@NonNull android.content.Context);
11 method @NonNull public final android.content.Context getContext();
Felipe Leme58e74582020-02-21 11:05:49 -080012 method public boolean isUserSupported(@NonNull com.android.server.SystemService.TargetUser);
Makoto Onukibf03b1b2020-01-15 11:16:19 -080013 method public void onBootPhase(int);
Makoto Onukibf03b1b2020-01-15 11:16:19 -080014 method public abstract void onStart();
Felipe Leme58e74582020-02-21 11:05:49 -080015 method public void onUserStarting(@NonNull com.android.server.SystemService.TargetUser);
16 method public void onUserStopped(@NonNull com.android.server.SystemService.TargetUser);
17 method public void onUserStopping(@NonNull com.android.server.SystemService.TargetUser);
18 method public void onUserSwitching(@Nullable com.android.server.SystemService.TargetUser, @NonNull com.android.server.SystemService.TargetUser);
19 method public void onUserUnlocked(@NonNull com.android.server.SystemService.TargetUser);
20 method public void onUserUnlocking(@NonNull com.android.server.SystemService.TargetUser);
Makoto Onukibf03b1b2020-01-15 11:16:19 -080021 method protected final void publishBinderService(@NonNull String, @NonNull android.os.IBinder);
22 method protected final void publishBinderService(@NonNull String, @NonNull android.os.IBinder, boolean);
23 field public static final int PHASE_ACTIVITY_MANAGER_READY = 550; // 0x226
24 field public static final int PHASE_BOOT_COMPLETED = 1000; // 0x3e8
25 field public static final int PHASE_DEVICE_SPECIFIC_SERVICES_READY = 520; // 0x208
26 field public static final int PHASE_LOCK_SETTINGS_READY = 480; // 0x1e0
27 field public static final int PHASE_SYSTEM_SERVICES_READY = 500; // 0x1f4
28 field public static final int PHASE_THIRD_PARTY_APPS_CAN_START = 600; // 0x258
29 field public static final int PHASE_WAIT_FOR_DEFAULT_DISPLAY = 100; // 0x64
30 }
31
32 public static final class SystemService.TargetUser {
33 method @NonNull public android.os.UserHandle getUserHandle();
34 }
35
36}
37
Sudheer Shankaeba01082021-02-25 05:42:23 +000038package com.android.server.am {
39
40 public interface ActivityManagerLocal {
Martijn Coenen78c258c2022-12-12 11:11:27 +010041 method public boolean bindSdkSandboxService(@NonNull android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.IBinder, @NonNull String, @NonNull String, int) throws android.os.RemoteException;
Hui Yu57c7aa92023-02-08 01:26:32 +000042 method public boolean bindSdkSandboxService(@NonNull android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull android.os.IBinder, @NonNull String, @NonNull String, @NonNull android.content.Context.BindServiceFlags) throws android.os.RemoteException;
Martijn Coenen78c258c2022-12-12 11:11:27 +010043 method @Deprecated public boolean bindSdkSandboxService(@NonNull android.content.Intent, @NonNull android.content.ServiceConnection, int, @NonNull String, @NonNull String, int) throws android.os.RemoteException;
Sudheer Shankaeba01082021-02-25 05:42:23 +000044 method public boolean canStartForegroundService(int, int, @NonNull String);
Sanjana Sunil46bb3e82022-12-06 14:53:48 +000045 method public void killSdkSandboxClientAppProcess(@NonNull android.os.IBinder);
Sanjana Sunil5b04b1c2023-01-25 18:33:11 +000046 method @Nullable public android.content.ComponentName startSdkSandboxService(@NonNull android.content.Intent, int, @NonNull String, @NonNull String) throws android.os.RemoteException;
47 method public boolean stopSdkSandboxService(@NonNull android.content.Intent, int, @NonNull String, @NonNull String);
Sudheer Shankaeba01082021-02-25 05:42:23 +000048 }
49
50}
51
Manjeet Rulhaniaebdeed12023-01-20 15:50:43 -080052package com.android.server.appop {
53
54 public interface AppOpsManagerLocal {
55 method public boolean isUidInForeground(int);
56 }
57
58}
59
Winsonc4481c52022-03-02 11:03:12 -080060package com.android.server.pm {
61
62 public interface PackageManagerLocal {
Samiul Islam080ba2d2022-02-24 16:22:40 +000063 method public void reconcileSdkData(@Nullable String, @NonNull String, @NonNull java.util.List<java.lang.String>, int, int, int, @NonNull String, int) throws java.io.IOException;
Winson Chiu58486772022-08-30 21:58:40 +000064 method @NonNull public com.android.server.pm.PackageManagerLocal.FilteredSnapshot withFilteredSnapshot();
65 method @NonNull public com.android.server.pm.PackageManagerLocal.FilteredSnapshot withFilteredSnapshot(int, @NonNull android.os.UserHandle);
66 method @NonNull public com.android.server.pm.PackageManagerLocal.UnfilteredSnapshot withUnfilteredSnapshot();
Samiul Islam080ba2d2022-02-24 16:22:40 +000067 field public static final int FLAG_STORAGE_CE = 2; // 0x2
68 field public static final int FLAG_STORAGE_DE = 1; // 0x1
Winsonc4481c52022-03-02 11:03:12 -080069 }
70
Winson Chiu58486772022-08-30 21:58:40 +000071 public static interface PackageManagerLocal.FilteredSnapshot extends java.lang.AutoCloseable {
72 method public void close();
Winson Chiu58486772022-08-30 21:58:40 +000073 method @Nullable public com.android.server.pm.pkg.PackageState getPackageState(@NonNull String);
Winson Chiub4740bc2022-10-12 20:47:45 +000074 method @NonNull public java.util.Map<java.lang.String,com.android.server.pm.pkg.PackageState> getPackageStates();
Winson Chiu58486772022-08-30 21:58:40 +000075 }
76
77 public static interface PackageManagerLocal.UnfilteredSnapshot extends java.lang.AutoCloseable {
78 method public void close();
79 method @NonNull public com.android.server.pm.PackageManagerLocal.FilteredSnapshot filtered(int, @NonNull android.os.UserHandle);
80 method @NonNull public java.util.Map<java.lang.String,com.android.server.pm.pkg.PackageState> getPackageStates();
81 }
82
83}
84
85package com.android.server.pm.pkg {
86
87 public interface AndroidPackage {
Winsonacd81de2022-12-16 13:12:46 -080088 method @Nullable public String getAppComponentFactory();
89 method @Nullable public String getApplicationClassName();
90 method @Nullable public String getBackupAgentName();
Winsonf67b9562023-02-10 14:49:26 -080091 method @DrawableRes public int getBannerResourceId();
Winsonacd81de2022-12-16 13:12:46 -080092 method public int getBaseRevisionCode();
93 method public int getCategory();
94 method @Nullable public String getClassLoaderName();
95 method @Dimension(unit=android.annotation.Dimension.DP) public int getCompatibleWidthLimitDp();
Winsonf67b9562023-02-10 14:49:26 -080096 method @XmlRes public int getDataExtractionRulesResourceId();
97 method @StringRes public int getDescriptionResourceId();
98 method @XmlRes public int getFullBackupContentResourceId();
Winsonacd81de2022-12-16 13:12:46 -080099 method public int getGwpAsanMode();
Winsonf67b9562023-02-10 14:49:26 -0800100 method @DrawableRes public int getIconResourceId();
101 method @StringRes public int getLabelResourceId();
Winsonacd81de2022-12-16 13:12:46 -0800102 method @Dimension(unit=android.annotation.Dimension.DP) public int getLargestWidthLimitDp();
Winson Chiu58486772022-08-30 21:58:40 +0000103 method @NonNull public java.util.List<java.lang.String> getLibraryNames();
Winsonf67b9562023-02-10 14:49:26 -0800104 method @XmlRes public int getLocaleConfigResourceId();
105 method @DrawableRes public int getLogoResourceId();
Winsonacd81de2022-12-16 13:12:46 -0800106 method public long getLongVersionCode();
107 method public float getMaxAspectRatio();
108 method public float getMinAspectRatio();
109 method public int getNativeHeapZeroInitialized();
Winsonf67b9562023-02-10 14:49:26 -0800110 method @XmlRes public int getNetworkSecurityConfigResourceId();
Winsonacd81de2022-12-16 13:12:46 -0800111 method @Nullable public String getRequiredAccountType();
112 method @Dimension(unit=android.annotation.Dimension.DP) public int getRequiresSmallestWidthDp();
113 method @Nullable public String getRestrictedAccountType();
Winsonf67b9562023-02-10 14:49:26 -0800114 method @DrawableRes public int getRoundIconResourceId();
Winson Chiu58486772022-08-30 21:58:40 +0000115 method @Nullable public String getSdkLibraryName();
Winsonacd81de2022-12-16 13:12:46 -0800116 method @Nullable public String getSharedUserId();
Winsonf67b9562023-02-10 14:49:26 -0800117 method @StringRes public int getSharedUserLabelResourceId();
Winson Chiu58486772022-08-30 21:58:40 +0000118 method @NonNull public java.util.List<com.android.server.pm.pkg.AndroidPackageSplit> getSplits();
119 method @Nullable public String getStaticSharedLibraryName();
Winson Chiuf1e50ac2022-10-20 22:22:08 +0000120 method @NonNull public java.util.UUID getStorageUuid();
Winson Chiu58486772022-08-30 21:58:40 +0000121 method public int getTargetSdkVersion();
Winsonf67b9562023-02-10 14:49:26 -0800122 method @StyleRes public int getThemeResourceId();
Winsonacd81de2022-12-16 13:12:46 -0800123 method public int getUiOptions();
124 method @Nullable public String getVersionName();
125 method @Nullable public String getZygotePreloadName();
Winsonf67b9562023-02-10 14:49:26 -0800126 method public boolean is32BitAbiPreferred();
Winsonacd81de2022-12-16 13:12:46 -0800127 method public boolean isAllowAudioPlaybackCapture();
Winsonacd81de2022-12-16 13:12:46 -0800128 method public boolean isAllowNativeHeapPointerTagging();
Winsonacd81de2022-12-16 13:12:46 -0800129 method public boolean isAnyDensity();
130 method public boolean isAttributionsUserVisible();
Winsonf67b9562023-02-10 14:49:26 -0800131 method public boolean isBackupAllowed();
Winsonacd81de2022-12-16 13:12:46 -0800132 method public boolean isBackupInForeground();
Winsonf67b9562023-02-10 14:49:26 -0800133 method public boolean isClearUserDataAllowed();
134 method public boolean isClearUserDataOnFailedRestoreAllowed();
135 method public boolean isCleartextTrafficAllowed();
Winsonacd81de2022-12-16 13:12:46 -0800136 method public boolean isCoreApp();
137 method public boolean isCrossProfile();
Winson Chiu58486772022-08-30 21:58:40 +0000138 method public boolean isDebuggable();
Winsonf67b9562023-02-10 14:49:26 -0800139 method public boolean isDeclaredHavingCode();
Winsonacd81de2022-12-16 13:12:46 -0800140 method public boolean isDefaultToDeviceProtectedStorage();
141 method public boolean isDirectBootAware();
Winsonf67b9562023-02-10 14:49:26 -0800142 method public boolean isExtraLargeScreensSupported();
143 method public boolean isExtractNativeLibrariesRequested();
Winsonacd81de2022-12-16 13:12:46 -0800144 method public boolean isFactoryTest();
145 method public boolean isForceQueryable();
146 method public boolean isFullBackupOnly();
147 method public boolean isHardwareAccelerated();
Winson Chiu58486772022-08-30 21:58:40 +0000148 method public boolean isIsolatedSplitLoading();
Winsonf67b9562023-02-10 14:49:26 -0800149 method public boolean isKillAfterRestoreAllowed();
Winsonacd81de2022-12-16 13:12:46 -0800150 method public boolean isLargeHeap();
Winsonf67b9562023-02-10 14:49:26 -0800151 method public boolean isLargeScreensSupported();
Winsonacd81de2022-12-16 13:12:46 -0800152 method public boolean isLeavingSharedUser();
153 method public boolean isMultiArch();
154 method public boolean isNativeLibraryRootRequiresIsa();
Winsonf67b9562023-02-10 14:49:26 -0800155 method public boolean isNonSdkApiRequested();
156 method public boolean isNormalScreensSupported();
Winsonacd81de2022-12-16 13:12:46 -0800157 method public boolean isOnBackInvokedCallbackEnabled();
158 method public boolean isPersistent();
159 method public boolean isProfileable();
160 method public boolean isProfileableByShell();
161 method public boolean isRequestLegacyExternalStorage();
162 method public boolean isRequiredForAllUsers();
163 method public boolean isResetEnabledSettingsOnAppDataCleared();
Winsonbc592e92022-12-19 09:53:50 -0800164 method public boolean isResourceOverlay();
Winsonacd81de2022-12-16 13:12:46 -0800165 method public boolean isRestoreAnyVersion();
Winsonf67b9562023-02-10 14:49:26 -0800166 method public boolean isRtlSupported();
167 method public boolean isSaveStateDisallowed();
Winson Chiu58486772022-08-30 21:58:40 +0000168 method public boolean isSignedWithPlatformKey();
Winsonf67b9562023-02-10 14:49:26 -0800169 method public boolean isSmallScreensSupported();
170 method public boolean isTaskReparentingAllowed();
Winsonacd81de2022-12-16 13:12:46 -0800171 method public boolean isTestOnly();
Winson Chiu58486772022-08-30 21:58:40 +0000172 method public boolean isUseEmbeddedDex();
Winsonf67b9562023-02-10 14:49:26 -0800173 method public boolean isUserDataFragile();
Winson Chiu58486772022-08-30 21:58:40 +0000174 method public boolean isVmSafeMode();
175 }
176
177 public interface AndroidPackageSplit {
178 method @Nullable public String getClassLoaderName();
179 method @NonNull public java.util.List<com.android.server.pm.pkg.AndroidPackageSplit> getDependencies();
180 method @Nullable public String getName();
181 method @NonNull public String getPath();
182 method public int getRevisionCode();
183 method public boolean isHasCode();
184 }
185
186 public interface PackageState {
187 method @Nullable public com.android.server.pm.pkg.AndroidPackage getAndroidPackage();
188 method public int getAppId();
Winson Chiu11143852022-10-26 17:16:56 +0000189 method public int getHiddenApiEnforcementPolicy();
Winson Chiu58486772022-08-30 21:58:40 +0000190 method @NonNull public String getPackageName();
191 method @Nullable public String getPrimaryCpuAbi();
Winson Chiu6e67aa12022-10-19 17:11:55 +0000192 method @Nullable public String getSeInfo();
Winson Chiu58486772022-08-30 21:58:40 +0000193 method @Nullable public String getSecondaryCpuAbi();
Winson Chiu06308312023-01-12 22:58:39 +0000194 method @NonNull public java.util.List<com.android.server.pm.pkg.SharedLibrary> getSharedLibraryDependencies();
Winson Chiu58486772022-08-30 21:58:40 +0000195 method @NonNull public com.android.server.pm.pkg.PackageUserState getStateForUser(@NonNull android.os.UserHandle);
Winsonbc592e92022-12-19 09:53:50 -0800196 method public boolean isApex();
Winson Chiu58486772022-08-30 21:58:40 +0000197 method public boolean isPrivileged();
198 method public boolean isSystem();
199 method public boolean isUpdatedSystemApp();
200 }
201
202 public interface PackageUserState {
Winsonbc592e92022-12-19 09:53:50 -0800203 method public long getFirstInstallTimeMillis();
Winson Chiu58486772022-08-30 21:58:40 +0000204 method public boolean isInstalled();
205 }
206
207 public interface SharedLibrary {
208 method @NonNull public java.util.List<java.lang.String> getAllCodePaths();
209 method @NonNull public android.content.pm.VersionedPackage getDeclaringPackage();
210 method @NonNull public java.util.List<com.android.server.pm.pkg.SharedLibrary> getDependencies();
211 method @NonNull public java.util.List<android.content.pm.VersionedPackage> getDependentPackages();
212 method @Nullable public String getName();
213 method @Nullable public String getPackageName();
214 method @Nullable public String getPath();
215 method public int getType();
216 method public long getVersion();
217 method public boolean isNative();
218 }
219
Winsonc4481c52022-03-02 11:03:12 -0800220}
221
Hai Zhang0b4f1712021-01-21 15:45:56 -0800222package com.android.server.role {
223
224 public interface RoleServicePlatformHelper {
225 method @NonNull public String computePackageStateHash(int);
226 method @NonNull public java.util.Map<java.lang.String,java.util.Set<java.lang.String>> getLegacyRoleState(int);
227 }
228
229}
230
Alex Buynytskyy4299a582023-01-26 16:42:40 -0800231package com.android.server.security {
232
Alex Buynytskyyf9049cf2023-02-01 15:53:32 -0800233 public final class FileIntegrity {
234 method public static void setUpFsVerity(@NonNull java.io.File) throws java.io.IOException;
235 method public static void setUpFsVerity(@NonNull android.os.ParcelFileDescriptor) throws java.io.IOException;
Alex Buynytskyy4299a582023-01-26 16:42:40 -0800236 }
237
238}
239
Muhammad Qureshiba6e2cf2021-03-22 20:26:55 -0700240package com.android.server.stats {
241
242 public final class StatsHelper {
243 method public static void sendStatsdReadyBroadcast(@NonNull android.content.Context);
244 }
245
246}
247
Alexander Dorokhine610afe52021-05-10 15:59:31 -0700248package com.android.server.usage {
249
250 public interface StorageStatsManagerLocal {
251 method public void registerStorageStatsAugmenter(@NonNull com.android.server.usage.StorageStatsManagerLocal.StorageStatsAugmenter, @NonNull String);
252 }
253
254 public static interface StorageStatsManagerLocal.StorageStatsAugmenter {
255 method public void augmentStatsForPackageForUser(@NonNull android.content.pm.PackageStats, @NonNull String, @NonNull android.os.UserHandle, boolean);
256 method public void augmentStatsForUid(@NonNull android.content.pm.PackageStats, int, boolean);
257 method public void augmentStatsForUser(@NonNull android.content.pm.PackageStats, @NonNull android.os.UserHandle);
258 }
259
260}
261
Roshan Piusea33fb92020-02-20 12:49:45 -0800262package com.android.server.wifi {
263
264 public class SupplicantManager {
265 method public static void start();
266 method public static void stop();
267 }
268
269}
270
Mohammed Rashidy0fb4f282022-12-06 16:28:39 +0000271package com.android.server.wm {
272
273 public interface ActivityInterceptorCallback {
274 method public default void onActivityLaunched(@NonNull android.app.TaskInfo, @NonNull android.content.pm.ActivityInfo, @NonNull com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo);
275 method @Nullable public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptResult onInterceptActivityLaunch(@NonNull com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo);
276 field public static final int MAINLINE_SDK_SANDBOX_ORDER_ID = 1001; // 0x3e9
277 }
278
279 public static final class ActivityInterceptorCallback.ActivityInterceptResult {
280 ctor public ActivityInterceptorCallback.ActivityInterceptResult(@NonNull android.content.Intent, @NonNull android.app.ActivityOptions, boolean);
281 method @NonNull public android.app.ActivityOptions getActivityOptions();
282 method @NonNull public android.content.Intent getIntent();
283 method public boolean isActivityResolved();
284 }
285
286 public static final class ActivityInterceptorCallback.ActivityInterceptorInfo {
287 method @NonNull public android.content.pm.ActivityInfo getActivityInfo();
288 method @Nullable public String getCallingFeatureId();
289 method @Nullable public String getCallingPackage();
290 method public int getCallingPid();
291 method public int getCallingUid();
292 method @Nullable public android.app.ActivityOptions getCheckedOptions();
293 method @Nullable public Runnable getClearOptionsAnimationRunnable();
294 method @NonNull public android.content.Intent getIntent();
295 method public int getRealCallingPid();
296 method public int getRealCallingUid();
297 method @NonNull public android.content.pm.ResolveInfo getResolveInfo();
298 method @Nullable public String getResolvedType();
299 method public int getUserId();
300 }
301
302 public static final class ActivityInterceptorCallback.ActivityInterceptorInfo.Builder {
303 ctor public ActivityInterceptorCallback.ActivityInterceptorInfo.Builder(int, int, int, int, int, @NonNull android.content.Intent, @NonNull android.content.pm.ResolveInfo, @NonNull android.content.pm.ActivityInfo);
304 method @NonNull public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo build();
Mohammed Rashidy8465aed2023-02-13 13:57:22 +0000305 method @NonNull public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo.Builder setCallingFeatureId(@Nullable String);
306 method @NonNull public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo.Builder setCallingPackage(@Nullable String);
307 method @NonNull public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo.Builder setCheckedOptions(@Nullable android.app.ActivityOptions);
308 method @NonNull public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo.Builder setClearOptionsAnimationRunnable(@Nullable Runnable);
309 method @NonNull public com.android.server.wm.ActivityInterceptorCallback.ActivityInterceptorInfo.Builder setResolvedType(@Nullable String);
Mohammed Rashidy0fb4f282022-12-06 16:28:39 +0000310 }
311
312 public class ActivityInterceptorCallbackRegistry {
313 method @NonNull public static com.android.server.wm.ActivityInterceptorCallbackRegistry getInstance();
314 method public void registerActivityInterceptorCallback(int, @NonNull com.android.server.wm.ActivityInterceptorCallback);
315 method public void unregisterActivityInterceptorCallback(int);
316 }
317
318}
319