经验
HaiJunYa
积极认真 好记忆烂笔头
展开
-
BundleIdentifier (MultipleValues)
General->Signing&Capabilities原创 2021-06-07 14:36:13 · 840 阅读 · 2 评论 -
Could not launch “xxx” Security
Could not launch “xxx” :Security提示信息app启动被ios的安全机制阻挡了。设置–>通用–>设备管理–>信任,重新在XCode上运行app就好了。原创 2021-04-26 23:08:18 · 919 阅读 · 0 评论 -
圆角/阴影效果
1、圆角效果优化APP应用程序开发中,图片圆角化的需求任务经常出现。如果通过客户端layer图层指令实现:imageView.layer.cornerRadius = CGFloat(10);imageView.layer.masksToBounds = YES;这样处理的渲染机制采用离屏渲染是GPU在全新上下文环境体系下全新开辟出某个渲染缓冲区,这会带来额外的性能损耗趋势。如果某个渲染视图界面中只存在少量的图片圆角化需求并采用离屏渲染实现圆角化效果,在需求任务量及其较少的情形下意味着默认/新缓冲原创 2021-04-25 13:50:06 · 410 阅读 · 0 评论 -
离屏渲染极致
离屏渲染:丢帧 -> 卡顿视觉暂留是存在有效时间限制(如果停留时间长度超过时间限制上阀(HSync)就会因失帧出现界面卡顿现象)CRT电子枪逐行扫描待显示图像(HSync水平同步信号产生的频率) —>获取信息数据CPU计算相关属性—>GPU渲染帧图(对应画面本身的规则数据信息) —>提交进默认(屏幕)缓冲区 —>(视频)控制器控制按照HSync水平同步信号读取帧数据传递给显示器。显示器显示同步控制器控制(同步带来流畅效果/HSync水平同步信号产生的频率(显示刷新率))。原创 2021-04-22 09:48:28 · 502 阅读 · 0 评论 -
加密算法RSA检验
检验RSA加密算法原创 2021-03-28 21:01:47 · 845 阅读 · 0 评论 -
非对称RSA密文传输(下)
加密算法非对称RSA的数论支持:1.素数:又称质数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。2.互质,又称互素。若N个整数的最大公因子是1,则称这N个整数互质。3.模运算即求余运算。和模运算紧密相关的一个概念是“同余”。数学上,当两个整数除以同一个正整数,若得相同余数,则二整数同余。欧拉函数任意给定正整数n,请问在小于等于n的正整数之中,有多少个与n构成互质关系?(比如,在1到8之中,有多少个数据与8构成互质关系?)欧拉函数以φ(n)表示。φ(8) = 4,如原创 2021-03-25 17:26:39 · 360 阅读 · 0 评论 -
非对称RSA密文传输(中)
RSA算法运转机制的原理图解:非对称加密算法原创 2021-03-25 15:48:56 · 91 阅读 · 0 评论 -
非对称RSA密文传输(上)
在编码与破译的斗争实践中逐步发展密码学科。三类加密算法:非对称加密、对称加密及哈希算法(HASH不是加密算法但由于不可逆性已成为加密算法中的重要构成部分)发出端内容信息的加密和接收方内容信息的解密都使用同样规则密钥称为"对称加密算法",使用相同的规则密钥,两次连续的对等逆向加密后会回复原始文字明文有很大的安全隐患。Diffie-Hellman密钥交换算法(实现非对称加密本质):不传递私钥,交换公钥。案3例:A给B发送信息1.B端(密文接收方)先生成两把密钥(公钥和私钥)。公钥是公开的(可公开交换)原创 2021-03-24 15:16:49 · 435 阅读 · 0 评论 -
多线程研究
线程的研究使用:应用App当前只存在1个线程情形:1.同步+(主线程)串行:死锁(类似断点暂停)2.同步+(普通)串行 / 同步+全局并行/同步+(普通)并行: 只激活主main线程(block事件 内外待执行级别相同有序进行即可(逻辑由上而下顺序))3.异步+(主线程)串行:只激活主main线程(逻辑先执行外部指令再依次执行block事件内指令)应用App当前存在2个线程情形:4.异步+(普通)串行:激活1main线程+1个普通线程(1+1)应用App当前存在多个线程情形:5.异步原创 2021-03-22 17:00:45 · 259 阅读 · 1 评论 -
Native本地格式化工具布置
HomeBrew环境本身安装->ocLint工具安装->cmake/ninja环境安装->xpretty环境原创 2021-03-15 21:38:40 · 118 阅读 · 0 评论 -
Failed to connect to github.com port 443: Operation timed out
全球IP查询分别查询github.com和github.global.ssl.fastly.net对应的ip地址原创 2021-03-15 17:18:48 · 1340 阅读 · 0 评论 -
Homebrew本身环境安装
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Homebrew环境的安装需求选项规则参数指定命令方向Homebrew是终端的配置使用工具,用来管理在终端下操作的程序码及在终端下操作的软件包依赖性,使Mac电脑可以快速配置开发环境。终端窗口通过Homebrew环境管理tar/giz等软件包。Homebrew安装环境已经配置完成brew helpbrew原创 2021-03-15 11:30:50 · 331 阅读 · 0 评论 -
xcode-select: error: tool
评审自动化流程构建:xcode-select: error: tool ‘xcodebuild’ requires Xcode, but active developer directory '/Library/D…报这个错误的原因是xcode-select不在默认的路径1.终端命令找到xcode-select当前路径xcode-select --print-path/Library/Developer/CommandLineTools2.设置xcode-select到指定位置sudo xc原创 2021-03-15 00:32:47 · 432 阅读 · 0 评论 -
target目标对象编译Multiple commands produce
target目标对象程序编译Multiple commands produce’/Users/…/Library/Developer/Xcode/DerivedData/…错误提示如下:Multiple commands produce '/Users/haijunyan/Library/Developer/Xcode/DerivedData/DemoDemo-bxcrrdbeougdhdebmdzbwzktbqgt/Build/Products/Debug-iphonesimulator/DemoDe原创 2021-03-15 00:23:49 · 1106 阅读 · 1 评论 -
使用NSLayoutConstraint添加约束线
参考链接:http://www.jianshu.com/p/a4812b01a2a3//view1可以待布局元件也可以为参考元件 //view2可以参考元件也可以为待布局元件 //事件函数计算公式: //view1.attr1 <relation> view2.attr2 * multiplier + constant //view1:约束线左(上)边端的元件(左(上)元件1) //attr1:指定view1约束线相关的轴线属性attr1(左(上)元原创 2021-02-24 15:20:44 · 411 阅读 · 0 评论 -
OC字符串内字母大小写转换
默认系统函数:lowercaseString转小写uppercaseString转大写-(NSString *)toLower:(NSString *)str{ for (NSInteger i=0; i<str.length; i++) { if ([str characterAtIndex:i]>='A'&[str characterAtIndex:i]<='Z') { //A 65 a 97原创 2021-02-17 20:28:05 · 511 阅读 · 0 评论 -
架构组合模式
组合模式?组合模式(Composite Pattern)又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。这种模式创建了一个包含自己对象组的类。该类提供了修改相同对象组的方式。主要解决的问题?它在我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。使用组合模式?树枝和叶子实现统一接原创 2021-02-17 20:09:52 · 145 阅读 · 0 评论 -
.app包主名称
编译后获得应用程序.app包 主名称重复实例资源移除原创 2021-02-16 22:41:28 · 106 阅读 · 0 评论 -
methodSwizzling原理分析
最近看了一些关于iOS逆向工程的基础知识和某些开源代码。根据越狱CydiaSubStrate关于MSHookMessageEx挂钩信息功能补充部分API介绍:Objective-C提供了好用的high_level runtime API,允许开发者使用class_getInstanceMethod, method_setImplementation和更强大的method_exchangeImpletation来swizzle四维索引重排方法并改变替换功能执行。虽然API非常好用但API却不能胜任更复杂原创 2020-10-04 21:24:02 · 317 阅读 · 1 评论 -
.pbxproj文件出现异常
原创 2020-09-29 10:56:23 · 177 阅读 · 0 评论 -
单项目工程存在多分支映射关系
原创 2020-09-29 10:32:25 · 100 阅读 · 0 评论 -
addSubview机制
元件实例通过addSubview成员方法实现子层控件向父载体层的添加,首先机制会判断当前所研究的父载体层上面是否已经承载有子层控件实例,如果本身父载体层上面已经承载有子层控件实例,直接保留不做变化,如果本身父载体层上面并没有相应的子层控件实例则做正式的添加操作实现添加效果。物质世界事务不会凭空消失也不会凭空产生,同一个实例元组件(同一片内存区域)多次执行addSubview添加子层方法,子层控件会出现在最后一次添加的父层上面。 UIButton *btn = [[UIButton alloc] initW原创 2020-09-23 16:44:09 · 857 阅读 · 1 评论 -
沙盒原理机制
1、沙盒机制介绍iOS中沙盒机制是一种安全体系,对应着某片独立的存储空间。任意一个iOS移动端程序项目工程都有各自独立的文件系统(独立的存储空间),项目工程应用程序的各种操作效果数据的来源都只能在对应的独立的文件系统存储空间内进行(沙盒空间)。应用程序项目工程的任何操作必然是在自己的沙盒对应的独立存储空间里进行操作,应用程序项目工程和独立的沙盒空间是彼此一一对应的。A应用程序不能访问B项目的沙盒。所有的非代码规则文件都要保存在对立的沙盒内存空间中(某片特殊特性的内存区域),例如属性文件plist、文本文原创 2020-09-23 16:02:58 · 732 阅读 · 0 评论 -
预处理命令#if#ifdef#ifndef
<#初实例值#>编码占位提示语言表达式整体可视为不方便远程访问不方便调用的隐式别名手机上面关闭消息通知推送避免叮咚响<#macro#>单独头h文件里面可以定义声明面向整个项目工程程序的全局型量符号开发者自己手工操作按部就班操作/自动操作需要设置窗口中设置属性引子preprocessor macros 预处理宏编写转化编译阶段:预处理命令(预处理阶段能够被机器识别辨别并分析做出回应的可响应指令/命令)普通操作命令(预处理阶段不会被机器识别辨别也不会被机器分析机器也不原创 2020-09-16 13:31:28 · 608 阅读 · 0 评论 -
static、const、extern组合使用
<#初实例值#>编码占位提示语言表达式整体可视为不方便远程访问不方便调用的隐式别名手机上面关闭消息通知推送避免叮咚响static关键字和const关键字联合使用:项目工程程序运行时堆内存区域中的静态区部分一直存在不会释放。static关键字和const关键字联合定义声明出 某个 只读的静态常 量符号(在某个单元文件分支逻辑/某个项目工程分支逻辑下需要经常使用的字符串常量可以通过static与const组合定义声明)。extern关键字和const关键字联合使用:作用:extern关原创 2020-09-14 14:47:27 · 416 阅读 · 0 评论 -
OC关键字const
常量非常量主要分析点在于堆内存区的读写特性。底层clang编译器编译机制作用下,不推荐将字符串常量抽像成宏符号。宏符号 与 字符串常量 比较:1.编译时刻:宏符号是预编译(正式编译之前先替换处理),const是编译阶段检查。2.编译阶段检查:宏符号不做检查,不会报宏符号替换的编译错误,只是单纯的替换,const会进行编译检查,会在编译阶段报语法错误。3.宏好处:某些函数,方法可以通过宏符号替换。 const常量堆内存区不能代替函数、方法。4.宏坏处:使用大量宏符号,每次都需要大量的预编译时间作重原创 2020-09-13 13:17:12 · 202 阅读 · 0 评论 -
OC中 关键字extern
属性成员名称/类中成员变量/项目工程全局型变量extern修饰声明 项目工程全局型变量(所在的可执行项目工程里面的任何位置都可以调用该全局型变量字段)。extern与头h文件的关系:声明头h文件方便其他文件(类)去调用本h文件中定义的类中成员变量、属性成员名和类中成员方法名。//类 定义声明区域@interface <#class name#> : <#superclass#>{<#栈器皿结构特征#><#类中成员变量名称#>;//eg:NSStr原创 2020-09-11 15:53:16 · 1026 阅读 · 0 评论 -
info.plist配置文件(项目工程)分析
原创 2020-09-11 10:31:44 · 116 阅读 · 0 评论 -
免证书真机调试
原创 2020-08-26 15:37:54 · 300 阅读 · 0 评论 -
no such file or directory
原创 2020-08-19 23:15:50 · 121 阅读 · 0 评论 -
/user/haijunyan/.ssh/known_hosts
先删除本地端硬盘区路径/user/haijunyan/.ssh/known_hosts下的known_hosts旧文件,终端指令重新拉取cd XXXXXXXgit pull原创 2020-08-10 15:12:18 · 223 阅读 · 0 评论 -
Xcode真机设备无线调试
打开Xcode菜单:Windows->Device and Simulators。找到连接的硬件设备,Connect via network选项打勾。然后断开数据线,设备仍热连接着在Xcode上选择真机安装设备,编译后安装运行会有如下提示Device and Simulators,选中待安装的设备,右健出现选项卡,选择Connect via IP Address项输入手机IP地址网络渠道的开通连接成功,硬件设备右边会有一个局域网的标识,选择硬件设备就可以成功安装在手机上并运行,原创 2020-08-07 09:53:07 · 2600 阅读 · 0 评论 -
代码拉取合并提交推送冲突异常常规处理
.plist作为后缀的单元文件通过编辑器打开原创 2020-08-01 16:34:18 · 393 阅读 · 0 评论 -
动态短信验证码验证流程
验证作用/识别作用/说明作用的数据信息码动态验证码单纯的验证过程:后台推送一串数据信息码给客户端——>客户端拿到数据信息码后再逆向上传给后台进行身份匹配整个完整的过程:下发阶段—>逆向上传阶段本质:基本的界面UI渲染+下发阶段数据通信/逆向上传阶段数据通信(1渲染+2请求)...原创 2020-07-28 23:20:12 · 1699 阅读 · 0 评论 -
YYModel封装增量包使用分析
案列参考:.h文件#import <Foundation/Foundation.h>#import <YYKit/NSObject+YYModel.h>@interface ModelGoodsHotTopPrd : NSObject@property(nonatomic,copy)NSString *gdsId;@property(nonatomic,assign)int orderItemNum;@property(nonatomic,assign)double o原创 2020-07-28 23:04:30 · 196 阅读 · 0 评论 -
Debug Excutable状态
原创 2020-07-13 23:35:04 · 174 阅读 · 0 评论 -
协议概念规范
isKindOfClass: 本身类及其子类isMemberOfClass:本身类OC语法中向一个实例对象发送消息的整个过程?分析消息发送的过程,需要了解Runtime机制的源码,了解OC语法(实例对象objc_object/类对象objc_class)对象布局模型(class_data_bits_t、class_rw_t、class_ro_t等结构体模型)。协议体系中定义声明的协议成员变量名称/协议成员方法名称本身对应栈容器内存区(托管持有协议成员方法本身实例)微信接龙方式:编辑框输入 #接原创 2020-07-13 23:32:21 · 192 阅读 · 0 评论 -
概念理解规范
本地自己玩耍涉及到的指令码不需要向上推送的编码:放弃修改<#…#>NSObject基类(基本类结构层次概念体系(没有父类))基协议(基础协议规范体系(没有父协议))自定义子类型规则/自定义子协议规范window/rootview的分层可以通过窗口管理分层器查看到,说明2个层已经确实构建并呈现出来,只不过是因为Xcode11本身默认黑色效果,看到黑屏。CPU—内存—硬件硬盘(堆)内存为CPU和硬件硬盘的中间桥梁tableview本身+子层单元实例(区别处)调节为弱网模式/强网模式原创 2020-07-13 23:30:05 · 130 阅读 · 0 评论 -
navigationController体系侧滑
push/POP禁止侧滑返回navigationController.interactivePopGestureRecognizer.enabled = NO允许侧滑返回navigationController.interactivePopGestureRecognizer.enabled = yes原创 2020-07-13 23:24:47 · 118 阅读 · 0 评论 -
自定义 通用父类 体系
继承特性子类继承父类继承的是父类的定义声明区成员、方法(h型文件中的成员、方法等)走向趋势/走向线的节点分割点对应着堆内存实例对象,节点和节点之间的线条线段部分对应类对象内存逻辑趋势彼此互不影响互不作用的堆内存实例对象/.hm类型文件蔟/组属于走向轨道管道,所以 辅助类 从某种角度可参考工厂流水线工作台(进出)/同一条流水线上不同的堆内存实例对象/不同的堆内存实例对象在同一条流水线上行走产生不同的效果(定义某个公共父类由不同的子类继承,参与继承的子类彼此互不干涉互不影响(参考基类NSObject的自定原创 2020-07-13 23:12:00 · 165 阅读 · 0 评论