Add support for ignoring overlay manipulation warning

This commit is contained in:
Jonas L 2019-03-25 00:00:00 +00:00
parent 1270d74a70
commit b6f5edc976
3 changed files with 15 additions and 2 deletions

View file

@ -25,13 +25,14 @@ export class IgnoreManipulationAction extends ParentAction {
readonly ignoreAppDowngrade: boolean readonly ignoreAppDowngrade: boolean
readonly ignoreNotificationAccessManipulation: boolean readonly ignoreNotificationAccessManipulation: boolean
readonly ignoreUsageStatsAccessManipulation: boolean readonly ignoreUsageStatsAccessManipulation: boolean
readonly ignoreOverlayPermissionManipulation: boolean
readonly ignoreDidReboot: boolean readonly ignoreDidReboot: boolean
readonly ignoreHadManipulation: boolean readonly ignoreHadManipulation: boolean
constructor ({ constructor ({
deviceId, ignoreDeviceAdminManipulation, ignoreDeviceAdminManipulationAttempt, deviceId, ignoreDeviceAdminManipulation, ignoreDeviceAdminManipulationAttempt,
ignoreAppDowngrade, ignoreNotificationAccessManipulation, ignoreUsageStatsAccessManipulation, ignoreAppDowngrade, ignoreNotificationAccessManipulation, ignoreUsageStatsAccessManipulation,
ignoreDidReboot, ignoreHadManipulation ignoreOverlayPermissionManipulation, ignoreDidReboot, ignoreHadManipulation
}: { }: {
deviceId: string deviceId: string
ignoreDeviceAdminManipulation: boolean ignoreDeviceAdminManipulation: boolean
@ -39,6 +40,7 @@ export class IgnoreManipulationAction extends ParentAction {
ignoreAppDowngrade: boolean ignoreAppDowngrade: boolean
ignoreNotificationAccessManipulation: boolean ignoreNotificationAccessManipulation: boolean
ignoreUsageStatsAccessManipulation: boolean ignoreUsageStatsAccessManipulation: boolean
ignoreOverlayPermissionManipulation: boolean
ignoreDidReboot: boolean ignoreDidReboot: boolean
ignoreHadManipulation: boolean ignoreHadManipulation: boolean
}) { }) {
@ -52,6 +54,7 @@ export class IgnoreManipulationAction extends ParentAction {
this.ignoreAppDowngrade = ignoreAppDowngrade this.ignoreAppDowngrade = ignoreAppDowngrade
this.ignoreNotificationAccessManipulation = ignoreNotificationAccessManipulation this.ignoreNotificationAccessManipulation = ignoreNotificationAccessManipulation
this.ignoreUsageStatsAccessManipulation = ignoreUsageStatsAccessManipulation this.ignoreUsageStatsAccessManipulation = ignoreUsageStatsAccessManipulation
this.ignoreOverlayPermissionManipulation = ignoreOverlayPermissionManipulation
this.ignoreDidReboot = ignoreDidReboot this.ignoreDidReboot = ignoreDidReboot
this.ignoreHadManipulation = ignoreHadManipulation this.ignoreHadManipulation = ignoreHadManipulation
} }
@ -63,11 +66,12 @@ export class IgnoreManipulationAction extends ParentAction {
adminA: this.ignoreDeviceAdminManipulationAttempt, adminA: this.ignoreDeviceAdminManipulationAttempt,
downgrade: this.ignoreAppDowngrade, downgrade: this.ignoreAppDowngrade,
notification: this.ignoreNotificationAccessManipulation, notification: this.ignoreNotificationAccessManipulation,
overlay: this.ignoreOverlayPermissionManipulation,
usageStats: this.ignoreUsageStatsAccessManipulation, usageStats: this.ignoreUsageStatsAccessManipulation,
hadManipulation: this.ignoreHadManipulation hadManipulation: this.ignoreHadManipulation
}) })
static parse = ({ deviceId, admin, adminA, downgrade, notification, usageStats, reboot, hadManipulation }: SerializedIgnoreManipulationAction) => ( static parse = ({ deviceId, admin, adminA, downgrade, notification, usageStats, overlay, reboot, hadManipulation }: SerializedIgnoreManipulationAction) => (
new IgnoreManipulationAction({ new IgnoreManipulationAction({
deviceId, deviceId,
ignoreDeviceAdminManipulation: admin, ignoreDeviceAdminManipulation: admin,
@ -75,6 +79,7 @@ export class IgnoreManipulationAction extends ParentAction {
ignoreAppDowngrade: downgrade, ignoreAppDowngrade: downgrade,
ignoreUsageStatsAccessManipulation: usageStats, ignoreUsageStatsAccessManipulation: usageStats,
ignoreNotificationAccessManipulation: notification, ignoreNotificationAccessManipulation: notification,
ignoreOverlayPermissionManipulation: !!overlay,
ignoreDidReboot: !!reboot, ignoreDidReboot: !!reboot,
ignoreHadManipulation: hadManipulation ignoreHadManipulation: hadManipulation
}) })
@ -92,4 +97,5 @@ export interface SerializedIgnoreManipulationAction {
hadManipulation: boolean hadManipulation: boolean
// was added at a later version // was added at a later version
reboot?: boolean reboot?: boolean
overlay?: boolean
} }

View file

@ -333,6 +333,9 @@ const definitions = {
}, },
"reboot": { "reboot": {
"type": "boolean" "type": "boolean"
},
"overlay": {
"type": "boolean"
} }
}, },
"additionalProperties": false, "additionalProperties": false,

View file

@ -54,6 +54,10 @@ export async function dispatchIgnoreManipulation ({ action, cache }: {
deviceEntry.highestUsageStatsPermission = deviceEntry.currentUsageStatsPermission deviceEntry.highestUsageStatsPermission = deviceEntry.currentUsageStatsPermission
} }
if (action.ignoreOverlayPermissionManipulation) {
deviceEntry.highestOverlayPermission = deviceEntry.currentOverlayPermission
}
if (action.ignoreDidReboot) { if (action.ignoreDidReboot) {
deviceEntry.didReboot = false deviceEntry.didReboot = false
} }