iOS 判断手机是否越狱

判断手机是否越狱,只需要调用以下方法(包含三种方式,三选一即可)

- (void) isJailBreak {
    // 第一种方法
   if ([[NSFileManager defaultManager] fileExistsAtPath:@"User/Applications/"]) {
      NSLog(@"isJailBreak1: The device is jail broken!");
      NSArray *appList = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:@"User/Applications/" error:nil];
      NSLog(@"isJailBreak1: appList = %@", appList);
    } else {
      NSLog(@"isJailBreak1: The device is NOT jail broken!");
    }
    // 第二种方法
   if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]) {
      NSLog(@"isJailBreak2: The device is jail broken!");
   } else {
     NSLog(@"isJailBreak2: The device is NOT jail broken!");
   }
   // 第三种方法
   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]]){
        NSLog(@"isJailBreak3:The device is jail broken!");
        return;
       }
   }
  NSLog(@"isJailBreak3: The device is NOT jail broken!");

}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 苹果安全支付机制 苹果是非常重视安全性的,所以给用户设计了一套复杂的安全机制。但是很多用户喜好自由或者是被一些商家...
    X_code_ZH阅读 2,197评论 0 1
  • 在进行模拟器测试时,由于电脑内存在第二个以及第三个常见越狱文件,一直判断已越狱。 判断是否越狱的常用几中判断方式
    翱翔的魁魁阅读 1,369评论 1 1
  • 之前的九篇文章讲述的是在不越狱的情况下,详细的讲解了对APP重签名的原理,如何动态库注入,以及之后的各种调试技巧。...
    一缕清风扬万里阅读 2,647评论 4 3
  • 外貌:柳叶眉下一双潋滟桃花眼显示着人儿的多情,深邃的眸子似是勾人陷入,眼角一抹泪痣更平添了几丝妩媚的,唇是不点而赤...
    江良阅读 158评论 0 0
  • 遗憾的是 这段感情里我没有认真付出 所以没了说挽留的资格 庆幸的是 那段感情里你没有陷得很深 所以有说走就走的权利...
    竹丝扣瓷阅读 279评论 0 4