diff --git a/AltStore/Managing Apps/AppManager.swift b/AltStore/Managing Apps/AppManager.swift index 340d34e4..8c88e0c9 100644 --- a/AltStore/Managing Apps/AppManager.swift +++ b/AltStore/Managing Apps/AppManager.swift @@ -1271,7 +1271,8 @@ private extension AppManager /* Verify App */ - let verifyOperation = VerifyAppOperation(permissionsMode: permissionReviewMode, context: context) + let permissionsMode = UserDefaults.shared.permissionCheckingDisabled ? .none : permissionReviewMode + let verifyOperation = VerifyAppOperation(permissionsMode: permissionsMode, context: context) verifyOperation.resultHandler = { (result) in do { diff --git a/AltStoreCore/Extensions/UserDefaults+AltStore.swift b/AltStoreCore/Extensions/UserDefaults+AltStore.swift index 2093e5a5..4308118e 100644 --- a/AltStoreCore/Extensions/UserDefaults+AltStore.swift +++ b/AltStoreCore/Extensions/UserDefaults+AltStore.swift @@ -75,6 +75,8 @@ public extension UserDefaults // Including "MacDirtyCow" in name triggers false positives with malware detectors 🤷‍♂️ @NSManaged var isCowExploitSupported: Bool + @NSManaged var permissionCheckingDisabled: Bool + class func registerDefaults() { let ios13_5 = OperatingSystemVersion(majorVersion: 13, minorVersion: 5, patchVersion: 0) @@ -93,6 +95,12 @@ public extension UserDefaults (ProcessInfo.processInfo.isOperatingSystemAtLeast(ios14) && !ProcessInfo.processInfo.isOperatingSystemAtLeast(ios15_7_2)) || (ProcessInfo.processInfo.isOperatingSystemAtLeast(ios16) && !ProcessInfo.processInfo.isOperatingSystemAtLeast(ios16_2)) + #if DEBUG + let permissionCheckingDisabled = true + #else + let permissionCheckingDisabled = false + #endif + let defaults = [ #keyPath(UserDefaults.isAppLimitDisabled): false, #keyPath(UserDefaults.isBackgroundRefreshEnabled): true, @@ -106,6 +114,7 @@ public extension UserDefaults #keyPath(UserDefaults.menuAnisetteURL): "https://ani.sidestore.io", #keyPath(UserDefaults.ignoreActiveAppsLimit): false, #keyPath(UserDefaults.isMacDirtyCowSupported): isMacDirtyCowSupported + #keyPath(UserDefaults.permissionCheckingDisabled): permissionCheckingDisabled, ] as [String : Any] UserDefaults.standard.register(defaults: defaults)