项目开发踩坑分享

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 就变的没啦脾气(待续。。。。。。)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,846评论 1 32
  • OC语言基础 1.类与对象 类方法 OC的类方法只有2种:静态方法和实例方法两种 在OC中,只要方法声明在@int...
    奇异果好补阅读 9,804评论 0 11
  • 转载自:https://halfrost.com/go_map_chapter_one/ https://half...
    HuJay阅读 11,453评论 1 5
  • 大暖男 你这次花光了所有运气 只为了借给我 在这场考研来用 我好开心啊 我一定要考上 等明年十二月份的时候 和你在...
    崔Miranda阅读 3,311评论 0 0
  • 我还是很喜欢你 像咿呀学语的孩童 词不达意 多年之前 我们蹒跚学步 初心不忘 我还是很喜欢你 像炊烟袅袅几许 棠梨...
    狼殿下阅读 3,644评论 0 3