iOS 判断手机是否越狱
2020-06-23 本文已影响0人
huxinwen
///手机是否越狱
+ (BOOL)isJailBreak
{
BOOL isJail = NO;
/// 根据是否能打开cydia判断
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]) {
isJail = YES;
}
/// 根据是否能获取所有应用的名称判断 没有越狱的设备是没有读取所有应用名称的权限的。
if ([[NSFileManager defaultManager] fileExistsAtPath:@"User/Applications/"]) {
isJail = YES;
}
NSArray *jailbreak_tool_paths = @[
@"/Applications/Cydia.app",
@"/Library/MobileSubstrate/MobileSubstrate.dylib",
@"/bin/bash",
@"/usr/sbin/sshd",
@"/etc/apt"
];
/// 判断这些文件是否存在,只要有存在的,就可以认为手机已经越狱了。
for (int i=0; i<jailbreak_tool_paths.count; i++) {
if ([[NSFileManager defaultManager] fileExistsAtPath:jailbreak_tool_paths[i]]) {
isJail = YES;
}
}
return isJail;
}