Hello,
I've been developing a custom DPC (Device Policy Controller) app which behaves as a device owner and manages the devices (TC52) we use.
It's been going well so far but I couldn't get OEMConfig integration going.
Whatever configuration I try to apply over DevicePolicyManager, OEMConfig app installed on the device doesn't get it.
This is what I do (I tried with many other configs and nothing seems to be working):
val bundle = Bundle().apply {
putBundle("uiConfig", Bundle().apply {
putBundle("displayConfig", Bundle().apply {
putBundle("displayPowerConfig", Bundle().apply {
putInt("displayPowerBrightnessMode", 2)
putInt("displayPowerBrightness", 50)
})
})
})
}
dpm.setApplicationRestrictions(
dpm.activeAdmins!![0],
"com.zebra.oemconfig.release",
bundle
)
This code runs without an exception, logcat doesn't show anything interesting, but OEMConfig's LAST UPDATE BROADCASE RECEIVED DATE AND TIME and LAST BUNDLE PROCESSED DATE AND TIME remains empty.
Also, nothing on the device seems to be changing.
When I get back the restrictions I applied, I can see the values I set:
val b = dpm.getApplicationRestrictions(dpm.activeAdmins!![0], "com.zebra.oemconfig.release")
I can read the values I have written back.
At this point I started thinking that maybe OEMConfig app doesn't really support any admin app to issue managed configurations on it but it has some sort of filtering / registering mechanism. Does it only work with EMM's DPC apps? If yes, what am I doing wrong?
Thanks,
Safa
---
Some more details:
TC520K
Android 13
Android Build Number: 13-34-31.00-TG-U00-STD-HEL-04
OEMConfig: 13.5.0.3
MX: 13.4.0.21
Schema I use: https://techdocs.zebra.com/oemconfig/13-5/mc2/
I don't have the legacy OEMConfig installed.
0 Replies