Add IPawletManager AIDL interface, PawletManager client wrapper, and PawletManagerService implementation. The service is hosted by a privileged system app which calls: ServiceManager.addService(PawletManager.SERVICE_NAME, new PawletManagerService(this)); API surface: - Build info: getPawletVersion, getDisplayVersion, getReleaseType, getBuildDate - Device info: getDeviceCodename, getDeviceModel, getHardwarePlatform, getSerialNumber - Provisioning: isDeviceProvisioned, isUserSetupComplete - Feature flags: isFeatureEnabled / setFeatureEnabled (persist.pawlet.feature.*) - SDK version: getPawletSdkVersion PawletDevice: remove broken resource lookup, use system props directly; add isPawletDevice, getBuildVersion, getDisplayVersion, getReleaseType, getHardwarePlatform, getSerialNumber, getBuildDate. PawletSystem: remove dead SDK<24 branches; improve isRooted to check su binary paths and Magisk; keep isEmulator with same logic. sepolicy: vendor_internal_prop for persist.* and vendor.* props, dontaudit for system domains; fix file_contexts JAR labels. Android.bp: add aidl block, pawlet-manager-service java_library. AndroidManifest: minSdk 26, targetSdk 36.
15 lines
360 B
XML
15 lines
360 B
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
package="pawletos.device">
|
|
|
|
<uses-sdk
|
|
android:minSdkVersion="26"
|
|
android:targetSdkVersion="36" />
|
|
|
|
<application
|
|
android:label="PawletOS-DeviceAPI"
|
|
android:supportsRtl="false">
|
|
</application>
|
|
|
|
</manifest>
|