Configure WV HAL APEX to be updatable
- add "supportRebootless" to apex_manifest.json - add <allowed-vendor-apex> sysconfig - add "on property:apex.com.google.android.widevine.ready=true" to .rc Now, we can test `adb install` new version of the APEX and see the service is restarted from the new version. Note that this doesn't mean that DRM Framework works fine with the update. Bug: 248192031 Test: adb install --force-non-staged \ -i com.android.vending \ $OUT/vendor/com.google.android.widevine.apex Change-Id: I7c41b224f0bb55742c0023c23196bba4a09e555f
This commit is contained in:
@@ -58,6 +58,11 @@ apex {
|
||||
key: "com.google.android.widevine.key",
|
||||
certificate: ":com.google.android.widevine.certificate",
|
||||
updatable: false,
|
||||
|
||||
// install sysconfig to allow the apex to be updatable
|
||||
required: [
|
||||
"allowlist_com.google.android.widevine.xml",
|
||||
],
|
||||
}
|
||||
|
||||
linker_config {
|
||||
@@ -81,3 +86,10 @@ prebuilt_etc {
|
||||
name: "com.google.android.widevine.rc",
|
||||
src: "com.google.android.widevine.rc",
|
||||
}
|
||||
|
||||
prebuilt_etc {
|
||||
name: "allowlist_com.google.android.widevine.xml",
|
||||
src: "allowlist_com.google.android.widevine.xml",
|
||||
vendor: true,
|
||||
sub_dir: "sysconfig",
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<!--
|
||||
This XML file declares the vendor apex package names eligible for installation.
|
||||
-->
|
||||
|
||||
<config>
|
||||
<allowed-vendor-apex package="com.google.android.widevine" installerPackage="com.android.vending" />
|
||||
</config>
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
"name": "com.google.android.widevine",
|
||||
"version": 1
|
||||
"version": 1,
|
||||
"supportsRebootlessUpdate": true
|
||||
}
|
||||
@@ -1,8 +1,12 @@
|
||||
on apex-ready
|
||||
on property:apex.all.ready=true
|
||||
mkdir /data/vendor/mediadrm 0770 media mediadrm
|
||||
|
||||
# Start service after update
|
||||
on property:apex.com.google.android.widevine.ready=true
|
||||
start vendor.drm-widevine-hal
|
||||
|
||||
service vendor.drm-widevine-hal /apex/com.google.android.widevine/bin/hw/android.hardware.drm-service.widevine
|
||||
interface aidl android.hardware.drm::IDrmFactory/widevine
|
||||
interface aidl android.hardware.drm.IDrmFactory/widevine
|
||||
class hal
|
||||
user media
|
||||
group media mediadrm drmrpc system
|
||||
|
||||
Reference in New Issue
Block a user