zoukankan      html  css  js  c++  java
  • ios 检测是否越狱代码

    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 ([[NSFileManager defaultManager] fileExistsAtPath:cydiaPath]) {
    jailbroken = YES;
    }
    if ([[NSFileManager defaultManager] fileExistsAtPath:aptPath]) {
    jailbroken = YES;
    }
    return jailbroken;
    }

    **********************************************************

    1. apt
    - (BOOL) hasAPT
    {
    return [[NSFileManager defaultManager] fileExistsAtPath:@"/private/var/lib/apt/"];
    }

    2. system
    - (BOOL) successCallSystem
    {
    return (system("ls") == 0) ? YES : NO;

    }

    3

    staticconstchar* jailbreak_apps[] ={    "/Applications/Cydia.app",    "/Applications/limera1n.app",    "/Applications/greenpois0n.app",    "/Applications/blackra1n.app",    "/Applications/blacksn0w.app",    "/Applications/redsn0w.app",    NULL,}; - (BOOL) isJailBroken{    // Now check for known jailbreak apps. If we encounter one, the device is jailbroken.    for(inti = 0; jailbreak_apps[i] != NULL; ++i)    {        if([[NSFileManagerdefaultManager] fileExistsAtPath:[NSStringstringWithUTF8String:jailbreak_apps[i]]])        {            //NSLog(@"isjailbroken: %s", jailbreak_apps[i]);            returnYES;        }    }         // TODO: Add more checks? This is an arms-race we're bound to lose.         returnNO;}
     
  • 相关阅读:
    五种方式获取文件扩展名-转载未验证
    http状态代码-转载
    求两个时间的日期差-部分
    jsp相对路径解决方案
    OAUI前台设计(二)
    jsp生命周期
    OA办公页面设计
    Redis全局命令及数据结构
    Redis集群简介及部署
    sql中 in到底走不走索引
  • 原文地址:https://www.cnblogs.com/qq378829867/p/2780834.html
Copyright © 2011-2022 走看看