Files
SideStore/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIDevice+Jailbreak.swift

48 lines
1.6 KiB
Swift
Raw Normal View History

//
// UIDevice+Jailbreak.swift
// AltStore
//
// Created by Riley Testut on 6/5/20.
// Copyright © 2020 Riley Testut. All rights reserved.
//
import ARKit
2023-03-01 00:48:36 -05:00
import UIKit
2023-03-01 00:48:36 -05:00
extension UIDevice {
var isJailbroken: Bool {
if
FileManager.default.fileExists(atPath: "/Applications/Cydia.app") ||
FileManager.default.fileExists(atPath: "/Library/MobileSubstrate/MobileSubstrate.dylib") ||
FileManager.default.fileExists(atPath: "/bin/bash") ||
FileManager.default.fileExists(atPath: "/usr/sbin/sshd") ||
FileManager.default.fileExists(atPath: "/etc/apt") ||
FileManager.default.fileExists(atPath: "/private/var/lib/apt/") ||
2023-03-01 00:48:36 -05:00
UIApplication.shared.canOpenURL(URL(string: "cydia://")!)
{
return true
2023-03-01 00:48:36 -05:00
} else {
return false
}
}
2023-03-01 00:48:36 -05:00
@available(iOS 14, *)
var supportsFugu14: Bool {
#if targetEnvironment(simulator)
2023-03-01 00:48:36 -05:00
return true
#else
2023-03-01 00:48:36 -05:00
// Fugu14 is supported on devices with an A12 processor or better.
// ARKit 3 is only supported by devices with an A12 processor or better, according to the documentation.
return ARBodyTrackingConfiguration.isSupported
#endif
}
2023-03-01 00:48:36 -05:00
@available(iOS 14, *)
var isUntetheredJailbreakRequired: Bool {
let ios14_4 = OperatingSystemVersion(majorVersion: 14, minorVersion: 4, patchVersion: 0)
2023-03-01 00:48:36 -05:00
let isUntetheredJailbreakRequired = ProcessInfo.processInfo.isOperatingSystemAtLeast(ios14_4)
return isUntetheredJailbreakRequired
}
}