iOS 判断系统是否越狱的代码

+ (BOOL) hasCydia{

return [[NSFileManager defaultManager] fileExistsAtPath:@"/Applications/Cydia.app"];

}

+ (BOOL) hasAPT

{

return [[NSFileManager defaultManager] fileExistsAtPath:@"/private/var/lib/apt/"];

}

+ (BOOL) successCallSystem

{

return (system("ls") == 0) ? YES : NO;

}

+ (bool) testLibEnv

{

char *env = getenv("DYLD_INSERT_LIBRARIES");

NSLog(@"%s", env);

return env != NULL;

}

+ (BOOL) isJailbreak

{

BOOL b0 = [self hasCydia],

b1 = [self hasAPT],

b2 = [self successCallSystem],

b3 = [self testLibEnv];

return b0||b1||b2||b3;

}

时间: 2024-11-13 00:13:55

iOS 判断系统是否越狱的代码的相关文章

iOS 判断设备是否越狱了

1 #import "PrisonBreakCheck.h" 2 3 @implementation PrisonBreakCheck 4 /** 5 * 判断iPhone是否越狱了 6 */ 7 +(BOOL)checkPrisonBreak 8 { 9 //获取当前环境参数 10 char *env = getenv("DYLD_INSERT_LIBRARIES"); 11 NSLog(@"%s", env); 12 //如果env 不是空

iOS 判断设备是否越狱

@interface UIDevice (Helper) - (BOOL)isJailbroken; @end @implementation UIDevice (Helper) - (BOOL)isJailbroken { BOOL jailbroken = NO; NSString *cydiaPath = @"/Applications/Cydia.app"; NSString *aptPath = @"/private/var/lib/apt/"; if (

iOS判断是否含有非法字符代码

- (BOOL)isHaveIllegalChar:(NSString *)str{     NSCharacterSet *doNotWant = [NSCharacterSet characterSetWithCharactersInString:@"[]{}(#%-*+=_)\\|~(<>$%^&*)_+ "];     NSRange range = [str rangeOfCharacterFromSet:doNotWant];     return ra

iOS判断一些权限是否被禁止

iOS中经常会遇到访问相册.相机.麦克疯.蓝牙.以及推送等权限,所以每次我们要使用这些权限是都要记得查看用户是否允许了,如果用户禁止了你的访问权限,你仍然去调取相册或者相机等,那么就会先出现下面的这个提示.而且是英文的,这时候用户可能有些懵逼了,这个时候我们最好给一个提示,用户点击确定后,我们最好贴心的跳转到应用的权限出,让用户一键允许. 权限被禁用 1.查看相册权限是否被禁用 (1.)iOS7之前的判断方法(包含iOS7) 导入头文件#import <AssetsLibrary/AssetsL

仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器,适配了iOS6-9系统,3行代码即可集成.

前段时间空余时间比较多,打算尝试做一个图片选择器出来,仔细对比了很多自定义了图片选择器的应用,感觉最喜欢微信的界面效果,当然微博的功能更强大,还支持了LivePhoto,所以打算模仿微信的界面效果,瞄着微博的功能去做一个图片选择器出来. 一.  TZImagePickerController简介 这个图片选择器还没达到我理想中的效果,但是最近工作开始忙起来了,所以有一些功能放在以后加入吧.目前这个图片选择器: (1)支持图片多选.选原图和视频: (2)支持预览图片和视频: (3)适配了iOS6~

ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局

本文转自 :http://www.cnblogs.com/wendingding/p/3761730.html ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局 一.实现效果 二.使用纯代码自定义一个tableview的步骤 1.新建一个继承自UITableViewCell的类 2.重写initWithStyle:reuseIdentifier:方法 添加所有需要显示的子控件(不需要设置子控件的数据和frame,  子控件要添加到contentView中

iOS开发--系统通讯录的访问与添加联系人

公司项目有访问通讯录的需求,所以开始了探索之路.从开始的一无所知,到知识的渐渐清晰.这一切要感谢广大无私分享的 “coder”,注:我是尊称的语气! 苹果提供了访问系统通讯录的框架,以便开发者对系统通讯录进行操作.(此demo为纯代码),想要访问通讯录,需要添加AddressBookUI.framework和AddressBook.framework两个框架,添加的地点这里就不在赘述了.在控制器内部首先import两个头文件,<AddressBook/AddressBook.h> 和 <

iOS的系统层级结构和相关的框架

一,概述 iOS的系统架构分为四个层次:核心操作系统层(Core OS layer).核心服务层(Core Services layer).媒体层(Media layer)和可触摸层(Cocoa Touch layer).理解iOS的系统构架,对我们日常开发有很大帮助.其实iOS是基于UNIX的,所以我们完全可以相信这个操作系统,要知道从系统的稳定性上来说它要比其他操作系统的产品好很多. 二, IOS操作系统的层次结构及相关框架 1.Core OS 核心层:包含Accelerate Framew

iOS插件详解之----CLangFormat(代码格式化管理插件)(2016.1.12王彬)

iOS插件详解之----CLangFormat(代码格式化管理)(2016.1.12王彬) 虽然在项目创建和团队组建的初期,我们就把公共约定以及一些规范定下来了,并且由于我们的代码是通过Git来做版本控制的,web上直接就支持Markdown格式的readme文件,可以随时看到最新的版本,但是这种规范只能依靠个人的意识,或者通过代码Review来解决,而且做代码Review的时候,你也不好意思总是写上一堆诸如“这里要加个空格”.“那里要加上换行”的评论吧?如果不管,久而久之,会因为每个人的习惯不