Files
oxmc 4149ba6560 Add AxSandbox integration (app-lock/app-hide/isolation/spoof)
Wires the ax_sandbox module (PawletOS/ax_sandbox, common/vendor/axion.xml --
source copied from AxionAOSP, see that repo's README.md for the license
decision record) into frameworks/base:

- IActivityManager.aidl: 34 new methods (getSandboxAppLockState,
  addSandboxLockedApp, isSandboxPackageHidden, etc.) plus 4 new
  com.android.internal.app types this depends on (HiddenNotificationInfo,
  IAppLockStateListener, IAppSessionListener, IHiddenNotificationListener --
  these also don't exist anywhere in AxionAOSP's own ax_sandbox module,
  only referenced by it; copied from their frameworks/base fork directly).
- ActivityManagerService.java: bare delegate implementations for all 34
  methods, calling AxSandboxService.getInstance(). No permission checks --
  faithfully matches AxionAOSP's own upstream implementation, which has
  none either. Flagged, not silently carried over -- see the block comment
  in IActivityManager.aidl.
- SystemServer.java: constructs AxSandboxService(mSystemContext, atm) right
  after StartThermalManager, matching real upstream placement (needs the
  ActivityTaskManagerService instance directly, same reason
  ActivityManagerService itself isn't built via the generic
  startService(Class) form).
- Context.java / SystemServiceRegistry.java: AX_SANDBOX_SERVICE constant +
  registration, so getSystemService(AxSandboxManager.class) resolves.
- core/java/Android.bp, services/core/Android.bp: filegroup references
  (ax_sandbox_common_sources, ax_sandbox_server_sources) pulling in the
  ax_sandbox repo's actual source.
- TaskFragment.java, ActivityRecord.java (6 call sites), Task.java,
  DisplayContent.java, KeyguardController.java, RecentTasks.java,
  ActivityTaskSupervisor.java (2 call sites): the real WM focus-lifecycle
  hooks AxSandboxService needs to actually gate app switches -- extracted
  from AxionAOSP's real frameworks/base fork diff (branch lineage-23.2)
  against a LineageOS lineage-23.2 baseline, isolating exactly the
  AxSandbox-relevant hunks from other bundled Axion features in the same
  files (GameSpaceService, AxDragonite, an unrelated TaskInputSink
  removal) that are explicitly out of scope here and were not pulled in.

Deferred, not included: the shared/ credential-verification + Compose UI
layer, and app-level consumers (AxSandbox, AppLocker apps).

See notes/axion-port-plan.md in the main PawletOS workspace for the full
decision record, including the explicit, informed acceptance of copying
source that has no license grant (all but one file in ax_sandbox).

Change-Id: Iaxs4ndb0x0000000000000000000000000000001
2026-10-17 21:28:36 -07:00

876 lines
25 KiB
Plaintext

package {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "frameworks_base_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
// SPDX-license-identifier-BSD
// legacy_unencumbered
default_applicable_licenses: ["frameworks_base_license"],
}
aidl_library {
name: "HardwareBuffer_aidl",
hdrs: ["android/hardware/HardwareBuffer.aidl"],
}
filegroup {
name: "framework-core-sources",
srcs: [
"**/*.aidl",
"**/*.java",
":ax_sandbox_common_sources",
":framework-nfc-non-updatable-sources",
":messagequeue-gen",
":ranging_stack_mock_initializer",
":anomaly_detector_mock_initializer",
":systemfeatures-gen-srcs",
":framework-network-security-config-sources",
],
// Exactly one MessageQueue.java will be added to srcs by messagequeue-gen
exclude_srcs: [
":framework-ravenwood-sources",
":dropboxmanager_aidl_sources",
":dynamic_instrumentation_manager_aidl_sources",
"android/os/*MessageQueue/**/*.java",
"android/os/DeliQueue/**/*.java",
"android/os/IProcessInfoService.aidl",
"android/ranging/**/*.java",
"android/os/mock/*.java",
],
visibility: ["//frameworks/base"],
}
filegroup {
name: "framework-ravenwood-sources",
srcs: [
"**/*_ravenwood.java",
],
visibility: ["//frameworks/base/ravenwood"],
}
//Mock to allow service registry for ranging stack.
//TODO(b/331206299): Remove this after RELEASE_RANGING_STACK is ramped up to next.
soong_config_module_type {
name: "ranging_stack_framework_mock_init",
module_type: "genrule",
config_namespace: "bootclasspath",
bool_variables: [
"release_ranging_stack",
],
properties: [
"cmd",
"out",
"srcs",
],
}
// The actual RangingFrameworkInitializer is present in packages/modules/Uwb/ranging/framework.
// Mock RangingFrameworkInitializer does nothing and allows to successfully build
// SystemServiceRegistry after registering for system service in SystemServiceRegistry both with
// and without build flag RELEASE_RANGING_STACK enabled.
ranging_stack_framework_mock_init {
name: "ranging_stack_mock_initializer",
soong_config_variables: {
release_ranging_stack: {
cmd: "touch $(out)",
// Adding an empty file as out is mandatory.
out: ["android/ranging/empty_ranging_fw.txt"],
conditions_default: {
srcs: ["android/ranging/mock/RangingFrameworkInitializer.java"],
cmd: "mkdir -p android/ranging/; cp $(in) $(out);",
out: ["android/ranging/RangingFrameworkInitializer.java"],
},
},
},
}
// Mock to allow service registry for anomaly detector.
// TODO(b/437406213): Remove this after RELEASE_ANOMALY_DETECTOR is ramped up to next.
soong_config_module_type {
name: "anomaly_detector_framework_mock_init",
module_type: "genrule",
config_namespace: "bootclasspath",
bool_variables: [
"release_anomaly_detector",
],
properties: [
"cmd",
"out",
"srcs",
],
}
// The actual AnomalyDetectorFrameworkInitializer is present in
// packages/modules/Profiling/anomaly-detector/framework.
// Mock AnomalyDetectorFrameworkInitializer does nothing and allows to successfully build
// SystemServiceRegistry after registering for system service in SystemServiceRegistry both with
// and without build flag RELEASE_ANOMALY_DETECTOR enabled.
anomaly_detector_framework_mock_init {
name: "anomaly_detector_mock_initializer",
soong_config_variables: {
release_anomaly_detector: {
cmd: "touch $(out)",
// Adding an empty file as out is mandatory.
out: ["android/os/empty_anomaly_detector.txt"],
conditions_default: {
srcs: ["android/os/mock/AnomalyDetectorFrameworkInitializer.java"],
cmd: "mkdir -p android/os/; cp $(in) $(out);",
out: ["android/os/AnomalyDetectorFrameworkInitializer.java"],
},
},
},
}
// Add selected MessageQueue.java implementation to srcs
soong_config_module_type {
name: "release_package_messagequeue_implementation_srcs",
module_type: "genrule",
config_namespace: "messagequeue",
value_variables: ["release_package_messagequeue_implementation"],
properties: [
"srcs",
],
}
// Output the selected android/os/MessageQueue.java implementation
release_package_messagequeue_implementation_srcs {
name: "messagequeue-gen",
soong_config_variables: {
release_package_messagequeue_implementation: {
srcs: ["android/os/%s"],
conditions_default: {
srcs: ["android/os/CombinedMessageQueue/*.java"],
},
},
},
cmd: "mkdir -p android/os/; cp $(in) $(out);",
out: ["android/os/MessageQueue.java"],
}
aidl_interface {
name: "dropboxmanager_aidl",
srcs: [":dropboxmanager_aidl_sources"],
unstable: true,
backend: {
java: {
additional_libs: ["unsupportedappusage"],
enabled: true,
},
rust: {
enabled: true,
apex_available: [
"//apex_available:platform",
"com.android.virt",
],
},
},
}
filegroup {
name: "dropboxmanager_aidl_sources",
srcs: ["com/android/internal/os/IDropBoxManagerService.aidl"],
}
filegroup {
name: "IBinaryTransparencyService.aidl",
srcs: ["com/android/internal/os/IBinaryTransparencyService.aidl"],
}
filegroup {
name: "ITracingServiceProxy.aidl",
srcs: ["android/tracing/ITracingServiceProxy.aidl"],
}
filegroup {
name: "TraceReportParams.aidl",
srcs: ["android/tracing/TraceReportParams.aidl"],
}
filegroup {
name: "dynamic_instrumentation_manager_aidl_sources",
srcs: ["android/os/instrumentation/*.aidl"],
}
aidl_interface {
name: "dynamic_instrumentation_manager_aidl",
srcs: [":dynamic_instrumentation_manager_aidl_sources"],
unstable: true,
}
aidl_interface {
name: "process_info_service_aidl",
srcs: [
"android/os/IProcessInfoService.aidl",
],
unstable: true,
host_supported: true,
}
filegroup {
name: "framework-internal-display-sources",
srcs: ["com/android/internal/display/BrightnessSynchronizer.java"],
visibility: ["//frameworks/base/services/tests/mockingservicestests"],
}
// These are subset of framework-core-sources that are needed by the
// android.test.mock library. The implementation of android.test.mock references
// private members of various components to allow mocking of classes that cannot
// be mocked without access to those internal implementation details.
filegroup {
name: "framework-core-sources-for-test-mock",
srcs: [
"android/accounts/AccountManager.java",
"android/accounts/AccountManagerCallback.java",
"android/accounts/AccountManagerFuture.java",
"android/accounts/AccountsException.java",
"android/accounts/AuthenticatorException.java",
"android/accounts/OperationCanceledException.java",
"android/app/Application.java",
"android/app/IApplicationThread.aidl",
"android/app/IServiceConnection.aidl",
"android/app/PackageDeleteObserver.java",
"android/content/ComponentCallbacks.java",
"android/content/ComponentCallbacks2.java",
"android/content/ContentInterface.java",
"android/content/ContentProvider.java",
"android/content/ContentProviderNative.java",
"android/content/ContentResolver.java",
"android/content/Context.java",
"android/content/ContextWrapper.java",
"android/content/DialogInterface.java",
"android/content/IContentProvider.java",
"android/content/Intent.java",
"android/content/IntentSender.java",
"android/content/OperationApplicationException.java",
"android/content/pm/ActivityInfo.java",
"android/content/pm/ApplicationInfo.java",
"android/content/pm/IPackageDataObserver.aidl",
"android/content/pm/InstantAppInfo.java",
"android/content/pm/KeySet.java",
"android/content/pm/PackageManager.java",
"android/content/pm/VerifierDeviceIdentity.java",
"android/content/res/Resources.java",
"android/database/CrossProcessCursor.java",
"android/database/CrossProcessCursorWrapper.java",
"android/database/Cursor.java",
"android/database/CursorWrapper.java",
"android/os/Binder.java",
"android/os/Bundle.java",
"android/os/IBinder.java",
"android/os/IInterface.java",
"android/os/ParcelFileDescriptor.java",
"android/os/Parcelable.java",
"android/os/RemoteException.java",
"android/os/storage/VolumeInfo.java",
"android/util/AndroidException.java",
"android/view/DisplayAdjustments.java",
"android/view/ViewDebug.java",
] + select(release_flag("RELEASE_NATIVE_FRAMEWORK_PROTOTYPE"), {
true: [
"android/app/INativeApplicationThread.aidl",
],
default: [],
}),
visibility: ["//frameworks/base/test-mock"],
}
filegroup {
name: "libincident_aidl",
srcs: [
"android/os/IIncidentDumpCallback.aidl",
"android/os/IIncidentManager.aidl",
"android/os/IIncidentReportStatusListener.aidl",
],
}
filegroup {
name: "libvibrator_aidl",
srcs: [
"android/os/ExternalVibrationScale.aidl",
"android/os/IExternalVibrationController.aidl",
"android/os/IExternalVibratorService.aidl",
],
}
filegroup {
name: "libpowermanager_aidl",
srcs: [
"android/os/CoolingDevice.aidl",
"android/os/IPowerManager.aidl",
"android/os/IScreenTimeoutPolicyListener.aidl",
"android/os/IThermalEventListener.aidl",
"android/os/IThermalHeadroomListener.aidl",
"android/os/IThermalService.aidl",
"android/os/IThermalStatusListener.aidl",
"android/os/IWakeLockCallback.aidl",
"android/os/Temperature.aidl",
],
}
aidl_interface {
name: "android.os.hintmanager_aidl",
defaults: [
"android.hardware.power-aidl",
],
srcs: [
"android/os/CpuHeadroomParamsInternal.aidl",
"android/os/GpuHeadroomParamsInternal.aidl",
"android/os/IHintManager.aidl",
"android/os/IHintSession.aidl",
"android/os/SessionCreationConfig.aidl",
],
unstable: true,
backend: {
java: {
sdk_version: "module_current",
enabled: true,
},
cpp: {
enabled: false,
},
ndk: {
enabled: true,
},
},
}
aidl_library {
name: "ILogcatManagerService_aidl",
srcs: ["android/os/logcat/ILogcatManagerService.aidl"],
}
genrule {
name: "statslog-framework-java-gen",
tools: ["stats-log-api-gen"],
cmd: "$(location stats-log-api-gen) --java $(out) --module framework" +
" --javaPackage com.android.internal.util --javaClass FrameworkStatsLog --worksource",
out: ["com/android/internal/util/FrameworkStatsLog.java"],
}
// Library that provides functionality to log UiEvents in framework space.
// If this functionality is needed outside the framework, the interfaces library
// can be re-used and a local implementation is needed.
java_library {
name: "uieventloggerlib",
srcs: [
":statslog-framework-java-gen",
"com/android/internal/logging/UiEventLoggerImpl.java",
],
libs: [
"androidx.annotation_annotation",
],
static_libs: ["modules-utils-uieventlogger-interface"],
}
java_library {
name: "modules-utils-locallog",
srcs: ["android/util/LocalLog.java"],
libs: [
"unsupportedappusage",
"ravenwood-annotations-lib",
],
sdk_version: "module_current",
min_sdk_version: "30",
apex_available: [
"//apex_available:anyapex",
"//apex_available:platform",
],
visibility: ["//visibility:public"],
}
// keep these files in sync with the package/Tethering/jarjar-rules.txt and
// package/Connectivity/jarjar-rules.txt for the tethering module and connectivity module.
filegroup {
name: "framework-connectivity-shared-srcs",
srcs: [
"android/util/IndentingPrintWriter.java",
"android/util/LocalLog.java",
// This should be android.util.IndentingPrintWriter, but it's not available in all branches.
"com/android/internal/util/IndentingPrintWriter.java",
"com/android/internal/util/MessageUtils.java",
"com/android/internal/util/WakeupMessage.java",
],
}
// keep these files in sync with the packages/modules/Connectivity jarjar-rules.txt for
// the connectivity module.
filegroup {
name: "framework-connectivity-api-shared-srcs",
srcs: [
"android/util/IndentingPrintWriter.java",
"com/android/internal/util/FileRotator.java",
],
}
filegroup {
name: "xml-utils-shared-srcs",
visibility: ["//visibility:public"],
srcs: [
"android/util/EmptyArray.java",
"android/util/CharsetUtils.java",
"android/util/XmlPullAttributes.java",
"android/util/Xml.java",
"com/android/internal/util/ArrayUtils.java",
"com/android/internal/util/ArtFastDataInput.java",
"com/android/internal/util/ArtFastDataOutput.java",
"com/android/internal/util/ArtBinaryXmlPullParser.java",
"com/android/internal/util/ArtBinaryXmlSerializer.java",
"com/android/internal/util/HexDump.java",
"com/android/internal/util/XmlSerializerWrapper.java",
"com/android/internal/util/XmlPullParserWrapper.java",
"com/android/internal/util/XmlUtils.java",
],
}
// keep these files in sync with the apex/jobscheduler/service jarjar-rules.txt for
// the jobscheduler module.
filegroup {
name: "framework-jobscheduler-shared-srcs",
srcs: [
":modules-utils-preconditions-srcs",
"com/android/internal/util/ArrayUtils.java",
"com/android/internal/util/BitUtils.java",
"com/android/internal/util/CollectionUtils.java",
"com/android/internal/util/ConcurrentUtils.java",
"com/android/internal/util/DumpUtils.java",
"com/android/internal/util/FastPrintWriter.java",
"com/android/internal/util/FunctionalUtils.java",
"com/android/internal/util/ParseUtils.java",
"com/android/internal/util/RingBufferIndices.java",
"com/android/internal/util/StatLogger.java",
"com/android/internal/util/XmlUtils.java",
],
}
// Keep these files in sync with the apex/permission/jarjar-rules.txt for the permission module.
filegroup {
name: "framework-permission-s-shared-srcs",
srcs: [
":modules-utils-preconditions-srcs",
"android/os/HandlerExecutor.java",
"com/android/internal/infra/AndroidFuture.aidl",
"com/android/internal/infra/AndroidFuture.java",
"com/android/internal/infra/IAndroidFuture.aidl",
"com/android/internal/infra/ServiceConnector.java",
],
}
// Keep these files in sync with the apex/permission/jarjar-rules.txt for the permission module.
filegroup {
name: "service-permission-shared-srcs",
srcs: [
"android/util/IndentingPrintWriter.java",
"com/android/internal/util/dump/DualDumpOutputStream.java",
],
}
filegroup {
name: "service-crashrecovery-shared-srcs",
srcs: [
"android/util/IndentingPrintWriter.java",
],
}
filegroup {
name: "incremental_aidl",
srcs: [
"android/os/incremental/IIncrementalServiceConnector.aidl",
"android/os/incremental/IncrementalFileSystemControlParcel.aidl",
],
}
filegroup {
name: "dataloader_aidl",
srcs: [
"android/content/pm/DataLoaderParamsParcel.aidl",
"android/content/pm/DataLoaderType.aidl",
"android/content/pm/FileSystemControlParcel.aidl",
"android/content/pm/IDataLoader.aidl",
"android/content/pm/IDataLoaderManager.aidl",
"android/content/pm/IDataLoaderStatusListener.aidl",
"android/content/pm/IPackageInstallerSessionFileSystemConnector.aidl",
"android/content/pm/InstallationFileLocation.aidl",
"android/content/pm/InstallationFileParcel.aidl",
],
}
filegroup {
name: "incremental_manager_aidl",
srcs: [
"android/os/incremental/IIncrementalService.aidl",
"android/os/incremental/IStorageHealthListener.aidl",
"android/os/incremental/IStorageLoadingProgressListener.aidl",
"android/os/incremental/IncrementalNewFileParams.aidl",
"android/os/incremental/PerUidReadTimeouts.aidl",
"android/os/incremental/StorageHealthCheckParams.aidl",
],
}
filegroup {
name: "activity_manager_procstate_aidl",
srcs: [
"android/app/ProcessStateEnum.aidl",
],
}
filegroup {
name: "activity_manager_iprocessobserver_aidl",
srcs: [
"android/app/IProcessObserver.aidl",
],
}
filegroup {
name: "activity_manager_iuidobserver_aidl",
srcs: [
"android/app/IUidObserver.aidl",
],
}
filegroup {
name: "activity_manager_runningappprocessinfo_aidl",
srcs: [
"android/app/RunningAppProcessInfo.aidl",
],
}
filegroup {
name: "hwbinder-stubs-srcs",
srcs: [
"android/os/DeadObjectException.java",
"android/os/DeadSystemException.java",
"android/os/HidlMemory.java",
"android/os/HidlSupport.java",
"android/os/HwBinder.java",
"android/os/HwBlob.java",
"android/os/HwParcel.java",
"android/os/IHwBinder.java",
"android/os/IHwInterface.java",
"android/os/NativeHandle.java",
"android/os/RemoteException.java",
"android/util/AndroidException.java",
],
visibility: [
"//frameworks/base",
"//frameworks/base/api",
],
}
cc_defaults {
name: "incremental_default",
cflags: [
"-DANDROID_BASE_UNIQUE_FD_DISABLE_IMPLICIT_CONVERSION",
"-Wall",
"-Werror",
"-Wextra",
"-Wextra-semi",
"-Wzero-as-null-pointer-constant",
],
shared_libs: [
"libbinder",
"libutils",
],
aidl: {
include_dirs: [
"frameworks/native/aidl/binder",
],
export_aidl_headers: true,
},
}
cc_library {
name: "libincremental_aidl-cpp",
srcs: [
":incremental_aidl",
],
defaults: ["incremental_default"],
}
cc_library {
name: "libdataloader_aidl-cpp",
srcs: [
":dataloader_aidl",
],
defaults: ["incremental_default"],
shared_libs: [
"libincremental_aidl-cpp",
],
}
cc_library {
name: "libincremental_manager_aidl-cpp",
srcs: [
":incremental_manager_aidl",
],
defaults: ["incremental_default"],
shared_libs: [
"libdataloader_aidl-cpp",
"libincremental_aidl-cpp",
],
}
// Build Rust bindings for PermissionController. Needed by keystore2.
aidl_interface {
name: "android.os.permissions_aidl",
unstable: true,
local_include_dir: ".",
srcs: [
"android/os/IPermissionController.aidl",
],
backend: {
rust: {
enabled: true,
apex_available: [
"//apex_available:platform",
"com.android.virt", // for virtualizationservice
],
},
},
}
// Build Rust bindings for remote provisioning. Needed by keystore2.
aidl_interface {
name: "android.security.rkp_aidl",
unstable: true,
srcs: [
"android/security/rkp/*.aidl",
],
backend: {
rust: {
enabled: true,
apex_available: [
"//apex_available:platform",
"com.android.virt",
],
},
},
}
aidl_interface {
name: "android.debug_aidl",
unstable: true,
srcs: [
"android/debug/AdbTransportType.aidl",
"android/debug/FingerprintAndPairDevice.aidl",
"android/debug/IAdbCallback.aidl",
"android/debug/IAdbManager.aidl",
"android/debug/PairDevice.aidl",
],
backend: {
cpp: {
enabled: true,
},
},
}
aidl_interface {
name: "android.companion.virtual.virtualdevice_aidl",
unstable: true,
host_supported: true,
srcs: [
"android/companion/virtualnative/IVirtualDeviceManagerNative.aidl",
],
local_include_dir: ".",
}
filegroup {
name: "frameworks-base-java-overview",
srcs: ["overview.html"],
}
// Avoid including Parcelable classes as we don't want to have two copies of
// Parcelable cross the libraries. This is used by telephony-common (frameworks/opt/telephony)
// and TeleService app (packages/services/Telephony).
filegroup {
name: "framework-telephony-common-shared-srcs",
srcs: [
"android/os/Registrant.java",
"android/os/RegistrantList.java",
"android/util/IndentingPrintWriter.java",
"android/util/LocalLog.java",
"android/util/TimeUtils.java",
"com/android/internal/os/SomeArgs.java",
"com/android/internal/util/AsyncChannel.java",
"com/android/internal/util/AsyncService.java",
"com/android/internal/util/BitwiseInputStream.java",
"com/android/internal/util/HexDump.java",
"com/android/internal/util/IndentingPrintWriter.java",
"com/android/internal/util/UserIcons.java",
],
}
filegroup {
name: "framework-ims-common-shared-srcs",
srcs: [
":modules-utils-preconditions-srcs",
"android/os/Registrant.java",
"android/os/RegistrantList.java",
"com/android/internal/os/SomeArgs.java",
],
}
// This file group is used by service fuzzer
filegroup {
name: "framework-core-sources-for-fuzzers",
srcs: [
"android/os/Binder.java",
"android/os/IBinder.java",
"android/os/IInterface.java",
"android/os/Parcelable.java",
],
}
filegroup {
name: "android-os-statsbootstrap-aidl",
srcs: [
"android/os/IStatsBootstrapAtomService.aidl",
"android/os/StatsBootstrapAtom.aidl",
"android/os/StatsBootstrapAtomValue.aidl",
],
visibility: ["//frameworks/native/libs/binder"],
}
// utility classes statically linked into wifi-service
filegroup {
name: "framework-wifi-service-shared-srcs",
srcs: [
"android/net/InterfaceConfiguration.java",
"android/util/BackupUtils.java",
"android/util/Rational.java",
"com/android/internal/util/HexDump.java",
"com/android/internal/util/MessageUtils.java",
"com/android/internal/util/WakeupMessage.java",
],
visibility: [
"//frameworks/opt/net/wifi/service",
"//packages/modules/Wifi/service",
],
}
// protolog start
filegroup {
name: "protolog-common-src",
srcs: [
"com/android/internal/protolog/common/**/*.java",
],
}
java_library {
name: "protolog-common-lib",
srcs: [
":protolog-common-src",
],
host_supported: true,
static_libs: [
"framework-annotations-lib",
],
}
java_library {
name: "protolog-group",
srcs: [
"com/android/internal/protolog/common/IProtoLogGroup.java",
],
}
// PackageManager common
filegroup {
name: "framework-pm-common-shared-srcs",
srcs: [
"com/android/server/pm/pkg/AndroidPackage.java",
"com/android/server/pm/pkg/AndroidPackageSplit.java",
],
}
filegroup {
name: "protolog-impl",
srcs: [
"com/android/internal/protolog/ProtoLogImpl.java",
],
}
java_library {
name: "protolog-lib",
srcs: [
"com/android/internal/protolog/ProtoLogImpl.java",
"com/android/internal/protolog/ProtoLogViewerConfigReader.java",
],
static_libs: [
"perfetto_trace_javastream_protos_jarjar",
],
}
java_library {
name: "protolog-groups",
srcs: [
"com/android/internal/protolog/WmProtoLogGroups.java",
],
static_libs: [
"protolog-common-lib",
],
}
// protolog end
java_system_features_srcs {
name: "systemfeatures-gen-srcs",
full_class_name: "com.android.internal.pm.RoSystemFeatures",
visibility: ["//visibility:private"],
}
aidl_interface {
name: "activitymanager_structured_aidl",
unstable: true,
srcs: [
"android/app/IActivityManagerStructured.aidl",
":activity_manager_iprocessobserver_aidl",
":activity_manager_iuidobserver_aidl",
":activity_manager_runningappprocessinfo_aidl",
],
backend: {
java: {
// java code is generated through framework-core-sources.
enabled: false,
},
rust: {
enabled: true,
},
},
}
aidl_interface {
name: "native_application_thread_aidl",
srcs: [
"android/app/INativeApplicationThread.aidl",
],
unstable: true,
backend: {
java: {
// java code is generated through framework-core-sources.
enabled: false,
},
rust: {
enabled: true,
},
},
}
aidl_interface {
name: "libactivity_manager_procstate_aidl",
srcs: [
":activity_manager_procstate_aidl",
],
host_supported: true,
unstable: true,
backend: {
java: {
// java code is generated through framework-core-sources.
enabled: false,
},
rust: {
enabled: true,
},
},
}