美文网首页
项目开发踩坑分享

项目开发踩坑分享

作者: iOS开发小学生 | 来源:发表于2018-12-18 22:13 被阅读12次

    1.大家熟悉的md5 加密是用c 语言写的,函数代码也比较简单,调用方便。那么md5的加密结果 分为16位和32位

    32位加密结果是正常的数值,16位是借取的32位的(8到24)位的值重新得到的数值结果,所以16位是32位的附属值。
    

    2.如何监听判断iPhone设备是否进行啦越狱操作?

    // 常见越狱文件
    const char *examineBreak_Tool_pathes[] = {
        "/Applications/Cydia.app",
        "/Library/MobileSubstrate/MobileSubstrate.dylib",
        "/bin/bash",
        "/usr/sbin/sshd",
        "/etc/apt"
    };
    char *printEnv(void){
        char *env = getenv("DYLD_INSERT_LIBRARIES");
        return env;
    
    }
    
    判断是否越狱的常用集中判断方式:
    + (BOOL)isBreakOutPrison{
        // 方式1.判断是否存在越狱文件
        for (int i = 0; i < 5; i++) {
            if ([[NSFileManager defaultManager] fileExistsAtPath:[NSString stringWithUTF8String:examineBreak_Tool_pathes[i]]]){
                return YES;
            }
        }
        // 方式2.判断是否存在cydia应用
        if([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"cydia://"]]){
            return YES;
        }
        // 方式3.读取系统所有的应用名称
        if ([[NSFileManager defaultManager] fileExistsAtPath:@"/User/Applications/"]){
            return YES;
        }
        // 方式4.读取环境变量
        if(printEnv()){
            return YES;
        }
        return NO;
    }
    
    

    3.多线程遇到AFN 就变的没啦脾气(待续。。。。。。)

    相关文章

      网友评论

          本文标题:项目开发踩坑分享

          本文链接:https://www.haomeiwen.com/subject/cemlkqtx.html