设置Charles Charles4.5.6版本为例,进行如下设置: 设置Proxy Settings 按图示设置 SSL Proxying Settings 按图示设置 设...
设置Charles Charles4.5.6版本为例,进行如下设置: 设置Proxy Settings 按图示设置 SSL Proxying Settings 按图示设置 设...
Async/await 是个啥一言以蔽之, 以前需要用闭包回调来写的代码, 我们现在可以用async/await来写, 这让我们可以抛弃复杂的闭包嵌套代码, 极大的简化了代码...
激活暗黑模式 在view或者controller中 overrideUserInterfaceStyle = .dark print(traitCollection.user...
使用RawRepresentabloe可以在自定义类型和相应的rawValue之间来回切换 比如我们使用一个结构体来管理埋点事件 然后根据提示补全代码 从这就更容易看出其原理...
利用cocoapods一键创建私有库 创建之后关联远程仓库 查看远程分支 关联本地分支和远程分支git branch --set-upstream-to=<remote>/ ...
一、NSDictionary使用原理 1.NSDictionary(字典)是使用hash表来实现key和value之间的映射和存储的,hash函数设计的好坏影响着数据的查找访...
embed的意思 是嵌入, 动态库用do not embed, 保证全局唯一, 静态库用embed, 可能会重复引用, 造成包体积大 两个静态库中如果有相同的静态库(比如系统...
大部分iOS项目都需要依赖pod管理第三方库, 第三方库又分为公有库和私有库,私有库所在的git服务器(比如gitlab)通过ssh公钥进行认证 ssh公钥配置 ssh-k...
最近公司在iOS开发小组的要求下,购置了一台Mac mini作为安卓组和苹果组自动打包机器。两组商量过后,决定使用Jenkins作为打包工具,毕竟Jenkins比较成熟。而苹...
iOS中事件响应会先依次调用个层级view的[UIView pointInSide] 方法, 如果返回true, 则会走改view的hittest方法, 所以如果我们想让v...
struct 是值类型, class 是引用类型 如果你持有一个实例, 想在多个地方对这个实例的属性的修改生效, 那么应该用class, 因为你在struct的实例中做修改之...
一直未间断SDK的工作,总是在做到现在从未总结,现在总结一下,备录一下,供大家参考和借鉴。 一、什么是库? 共享代码便是库,实现代码的复用,一般分为静态库和动态库。 二、静态...
将要废弃的分支git reset 到某个节点(SHA-1值) 在这个时间点新建一个新的分支 Git add . Git stash save “xxx”, 将分支上的改动推...
如图我们想把这张图片拉大, 但保持圆角不变, 肯定不能直接把image放大, swift提供两个方法let imageV = UIImageView(frame: CGRe...
为了适配iOS 13,
原本可以直接将 NSData 类型 转换成 NSString 字符串,然后替换掉多余的符号
hash = [hash stringByReplacingOccurrencesOfString:@" " withString:@""];
hash = [hash stringByReplacingOccurrencesOfString:@"<" withString:@""];
hash = [hash stringByReplacingOccurrencesOfString:@">" withString:@""];
这个方法失效,借鉴iOS 13适配总结 https://www.jianshu.com/p/8183d086b931
需要将代码变成
- (NSString *)SHA256
{
const char *s = [self cStringUsingEncoding:NSUTF8StringEncoding];
NSData *keyData = [NSData dataWithBytes:s length:strlen(s)];
uint8_t digest[CC_SHA256_DIGEST_LENGTH] = {0};
CC_SHA256(keyData.bytes, (CC_LONG)keyData.length, digest);
NSData *out = [NSData dataWithBytes:digest length:CC_SHA256_DIGEST_LENGTH];
const unsigned *hashBytes = [out bytes];
NSString *hash = [NSString stringWithFormat:@"%08x%08x%08x%08x%08x%08x%08x%08x",
ntohl(hashBytes[0]), ntohl(hashBytes[1]), ntohl(hashBytes[2]),
ntohl(hashBytes[3]), ntohl(hashBytes[4]), ntohl(hashBytes[5]),
ntohl(hashBytes[6]), ntohl(hashBytes[7])];
return hash;
}
亲测,可以适配iOS13并且兼容之前系统
通常json 反序列化方法: options 有这些: mutableContainers:在 OC 中, 如果想用 mutableArray 或者 mutableDicti...
一般与 web 交互传递的参数是 string 类型 使用中javaScriptString由 callback 名拼接参数 arg: String通常做法 jsString...