- 博客(334)
- 资源 (31)
- 收藏
- 关注
原创 iOS RACScheduler 使用详解
是 ReactiveCocoa 框架中的一个关键组件,用于在 iOS 开发中管理任务的并发执行。以下是如何详细使用的指南,以 Markdown 格式展示。
2024-04-21 13:00:00 515 1
转载 iOS - RAC 基本使用
RAC使用函数响应式编程的思想,将我们平时用到的按钮点击事件、KVO、代理、通知等等封装起来,处理业务逻辑的代码放到一起,使代码更加的简洁、高内聚、低耦合,那么我们来看看它的具体使用。
2023-08-21 19:52:18 947
转载 IOS - RAC最快让你上手ReactiveCocoa之基础篇
表示订阅者的意思,用于发送信号,这是一个协议,不是一个类,只要遵守这个协议,并且实现方法才能成为订阅者。信号类(RACSiganl),只是表示当数据改变时,信号内部会发出数据,它本身不具备发送信号的能力,而是交给内部一个订阅者去发出。:用于当一个信号,被多次订阅时,为了保证创建信号时,避免多次调用创建信号中的block,造成副作用,可以使用这个类处理。默认一个信号都是冷信号,也就是值改变了,也不会触发,只有订阅了这个信号,这个信号才会变为热信号,值改变了才会触发。
2023-08-21 19:49:55 378
原创 IOS-iphone端WKWebView开发者模式
启动 APP ,加载 WKWebView 后即可在Mac端看到 H5页面。这时即可连接手机通过Safari中进行调试,Safari 开发中看到设备,可以查看当前的 HTML 代码,JS 代码,网络情况等。Mac端Safari显示开发菜单: Safari 浏览器 -> 偏好设置 -> 高级 -> 勾选在菜单中显示“开发”设置。手机端开启Web 检查器:设置 -> 通用 -> Safari -> 高级 -> Web 检查器。WKWebView调试App内嵌网页。
2022-12-17 15:36:16 1095 2
原创 ios- Gesture
手势优先级requireGestureRecognizerToFail,创建另一个有联系的手势识别器,只要另一个手势状态为。这个手势才会被相应。如果另一个手势正在被响应,那么这个手势不会被响应。
2022-11-30 14:18:01 872
原创 IOS- UICollectionView
header 注册 [_collectionView registerClass:[MyCollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"HeaderView"];设置header-(UICollectionReusableView *)collectionView:(UICollectionView *)c
2022-11-28 18:38:12 346 1
转载 Charles 手机https抓包
Charles简介Charles是一个HTTP代理服务器,HTTP监视器,反转代理服务器,当浏览器连接Charles的代理访问互联网时,Charles可以监控浏览器发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息)。一、下载地址:https://www.charlesproxy.com/1.选择对应的操作系统2.点击 DOwnload a free trial 进行下载
2022-07-08 17:22:48 3422
转载 私有apiNon-public API usage - The app references non-public selectors in—Your app uses or references
之前接了一个旧的项目,代码混乱,年代久远,不得不吐槽一波,好不容易改完需求提交代码,说用到了non-public APIs,搞了好久终于找到地方了,下面是我的解决过程,让大家少走弯路:下面的被驳回的原因:Your app uses or references the following non-public APIs:setTimeOut:The use of non-public APIs is not permitted on the App Store because it can l
2022-01-05 16:53:42 1065
原创 IOS-私有库 GKit.podspec Pod 新版
知识时间长不用真的是容易忘,基础的教程可以看iOS开发——组件化之Cocoapods私有库详解 lib_Gaos的BLOG-CSDN博客前言随着公司业务的不断发展,团队不断壮大的同时,项目也随之臃肿起来,如何保障团队协作的高效,自然的想到了组件化这个话题。下面总结下本人的梳理和思考。组件化为什么我们需要组件化项目模块间的解耦、模块实现可重用、提升团队成员之间团队之间的协作开发效率、更方便单元测试。并不是所有的项目都适合组件化如果你的项目较小,模块之间交互简单,耦合很少;模块没有被外部模块引用,只是一个单独的
2021-12-02 21:22:32 1780
转载 iOS开发——组件化之Cocoapods私有库详解 lib
前言随着公司业务的不断发展,团队不断壮大的同时,项目也随之臃肿起来,如何保障团队协作的高效,自然的想到了组件化这个话题。下面总结下本人的梳理和思考。组件化 为什么我们需要组件化 项目模块间的解耦、模块实现可重用、提升团队成员之间团队之间的协作开发效率、更方便单元测试。 并不是所有的项目都适合组件化 如果你的项目较小,模块之间交互简单,耦合很少;模块没有被外部模块引用,只是一个单独的小模块;模块不需要重用,代码也很少被修改;团队规模很小。那么,你对项目就没有必要做组件化。如果你
2021-11-13 17:22:13 617
原创 IOS-UICollectionView
minimumLineSpacing 跟滑动方向一致的距离minimumInteritemSpacing 跟滑动方向垂直的距离layout.sectionInset = UIEdgeInsetsMake(上, 左 下, 右 );垂直距离举例section的上下边界为上下section左右边界为左右item的上下间距为minimumInteritemSpacingitem的左右间距为 MAX( MIN(左右) 与 minimumLineSpacing)最大值...
2021-07-16 15:46:02 197
原创 Xcode ImageOptim Compress PNG Files
“Compress PNG Files"实际上是将图片像素的颜色信息,转换成iPhone能够更快渲染的格式PNG图片采用的颜色空间,一般是RGBA。也就是说,一个像素点的颜色,是由四个分表代表红色,绿色,蓝色,透明度的字节来存储。而iPhone的图像内存,使用的是一种非标准的颜色空间(BGRA,对应的图片格式叫做CgBI))。从读取图片像素点RGBA的信息,到最终计算出,屏幕渲染所需的BGR,会有更大的耗时。1.所谓的Compress PNG Files并不是为了减少图片的大小,而是为了加快应用运行
2021-07-08 13:48:21 318
原创 ios-collectionview三种排版方式
元素流排版//// LMJElementsFlowLayout.m//// Created by apple on 17/4/19.// Copyright © 2017年 NJHu. All rights reserved.//#import "LMJElementsFlowLayout.h"#define LMJXX(x) floorf(x)#define LMJXS(s) ceilf(s)static const CGFloat LMJ_XMargin_ = 10;
2021-06-30 14:35:25 1089
原创 引用c++ .cpp 文件时候pch文件报错
今天碰到一个问题:C OC C++文件在项目中混编时1、出现could not build module foundation错误2、NSObjCRuntime.h NSObject.h NSZone.h 将会报出编译异常。解决:1 1 2 3 4 5 6 7 8 9 项目pch文件中,#import的头文件做如下操作 // 表示宏内引用的文件确保只被使用 Objecti...
2021-03-09 10:47:11 372
原创 Agora声网 互动直播,pk,自定义渲染,路旁推流, 水晶球
//// LiveView.m// DANSER//// Created by gaos on 2021/02/02.// Copyright © 2021年 TianGe. All rights reserved.//#import "DSRAnchorPKLiveView.h"#import <AgoraRtcEngineKit/AgoraRtcEngineKit.h>#import "TGCamera.h"#import "TGOpenGLView.h"...
2021-02-26 17:29:31 2043 1
原创 ios- UIImageView 序列帧实现gif图 直播送礼效果 图片拉伸
UIImageView 或者CALayer +定时器类1.使用 【 UIImageimageWithContentsOfFile】从磁盘映射方式加载图片数据流(创建了一个文件映射数据, 图片文件既没有真正被加载到内存, 更没有被解码成位图的形式可供Core Animation渲染)2.讲UIImage 赋值给 UIImageView这个过程,隐式的CATransaction(事物)会捕获到imageView图层树的变化,并在下一个runloop到来时提交事务,处理过程中包涵1.分配缓冲区管理文...
2020-09-04 15:16:57 513
转载 App Clips
作者: pmst,iOS 开发者WWDC20 10174: https://developer.apple.com/videos/play/wwdc2020/10174/App Clips 是今年 WWDC20 大会的亮点之一,罗列几个开发者感兴趣的问题:-什么是 App Clips;-实际应用场景中是如何交互的;- 构建 App Clips 的有哪些前置条件;- 如何在已有项目中添加对 App Clips 的支持等一系列问题。在回答上述几个问题之前,我们先来明确三...
2020-08-18 13:14:31 390
转载 IOS-appstore 修改主语言
1.首先添加你所要设置为主语言的本地化语言,2.该本地化的语言所使用的商店展示截图必须是重新上传的主要语言的作用就是,如果一个在俄罗斯的人在AppStore下载app,下载界面显示的是中文,但是我们的期望是除了中国以外都显示英语,所以最好把主要语言设为英语。*默认添加的新语言会以当前的主语言共享商店展示图片,这样状态是不能设置主语言的,必需重新上传添加新的主语言的商店展示图片,即使图片一毛一样也要重新上传,保证该语言版本的展示图片是独立存在的,因为主语言可以编辑,编辑意味着可以删除,(YY 假如
2020-08-10 15:26:28 2050
转载 ios-TestFlight 沙盒测试 蒲公英 fir appuploader
沙盒不需要真实邮件就可以测试TestFlight 需要添加测试员,,如果没有收到邮件,选中构建版本-ios-版本号-添加独立测试员-收到打开兑换码的邮件,app中登录到testflight,填写兑换码前言在iOS 8中,苹果发布了一个叫做TestFlight的新玩意,用于将Beta测试流水化。此前你可能听说过这个东西,因为TestFlight作为一个独立的测试平台已经有些年头了。不过在今年二月份的时候TestFlight的开发商Burstly被苹果收购,于是在之后公开发行的Xcode 6和.
2020-08-07 16:56:15 1242
原创 IOS- UIWebview WKWebView New apps that use UIWebView
ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability. Learn moregrep -r UIWebView .目前老版的分享sdk中会包括更新到最新
2020-08-04 10:26:30 364
转载 2020年iOS面试反思总结
Object-C系列面试题总结基础题:1.Objective-C的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么不要在category中重写一个类原有的方法?答:Objective-c的类不可以有多继承,OC里面都是单继承,多继承可以用protocol委托代理来模拟实现可以实现多个接口,可以通过实现多个接口完成OC的多重继承Category是类别;⚠️重写一个类的方式用继承好还是分类好:重写一个类的方式用继承还是分类.取决于具
2020-07-27 11:49:01 440 1
原创 IOS- LXPlayerLive GPUImage LFLiveKit
https://github.com/SoftProgramLX/LXPlayerLive问题nginx第二次打开时候ginx: [alert] could not open error log file: open() "/usr/local/var/log/nginx/error.log" failed (13: Permission denied)2020/07/23 18:07:44 [notice] 27087#0: signal process started2020/.
2020-07-23 18:59:16 250
原创 IOS-GPUImage 美颜 滤镜 水印 分段录制
//// RecordVideoViewController.m// AVStream//// Created by gaoshuang on 2018/4/26.// Copyright © 2018年 gaoshuang . All rights reserved.//#import "RecordVideoViewController.h"#import "AVUtil.h"#define DEFAULT_VIDEO_SIZE (CGSizeMake(576.,1024.
2020-07-22 17:35:50 660
原创 IOS-海外版授权分享推送统计 Google FaceBook Twitter Instagram
Google登录Google登录官方文档以及Demo1.根据文档添加GoogleSignInDependencies.framework,GoogleSignIn.framework ,GoogleSignIn.bundle如果不用官方按钮的话就不需要这个2.根据文档添加依赖3.生成client ID,点击绿色按钮,最后生成static NSString * const k...
2020-07-22 16:21:02 4105
转载 关于 iOS离屏渲染的深入研究(进阶篇)
在平时的iOS面试中,我们经常会考察有关离屏渲染(Offscreen rendering)的知识点。一般来说,绝大多数人都能答出“圆角、mask、阴影会触发离屏渲染”,但是也仅止于此。如果再问得深入哪怕一点点,比如: 离屏渲染是在哪一步进行的?为什么? 设置cornerRadius一定会触发离屏渲染吗? 90%的候选人都没法非常确定地说出答案。作为一个客户端工程师,把控渲染性能是最关键、最独到的技术要点之一,如果仅仅了解表面知识,到了实际应用时往往会失之毫厘谬以千里,无法得到预期的效
2020-07-21 10:14:03 377
转载 iOS 苹果授权登录(Sign in with Apple)系列之Apple Developer配置篇
原文在iOS13中,如果App提供第三方登录,就必须添加苹果登录 Sign in with Apple选项,并要求所有开发者于2020年4月之前完成现有应用的更新,否则审核不给通过。iOS 苹果授权登录(Sign in with Apple)系列之Apple Developer配置篇iOS 苹果授权登录(Sign in with Apple)系列之原生篇iOS 苹果授权登录(Sign in with Apple)系列之uniapp篇iOS 苹果授权登录(...
2020-07-17 16:07:18 11385
转载 正则表达式
这篇文章主要介绍了正则表达式匹配各种特殊字符的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下写个可以匹配一下各种特殊字符的正则表达式 1 2 ((?=[\x21-\x7e]+)[^A-Za-z0-9]) x21-\x7e]+)[^A-Za-z0-9]) 这个匹配所有键盘上可见的非字母和数字的符号 1 2 3 4 5 var patrn = /[`~!@#$%...
2020-07-13 16:04:46 122
原创 IOS-小工具
目前使用到的两个小工具https://github.com/HDB-Li/LLDebugToolhttps://github.com/xiamoweinuan/AMLeaksFinder NSString* strVersion =[[NSBundle mainBundle] infoDictionary][@"CFBundleShortVersionString"]; NSString* strbuild =[[NSBundle mainBundle] infoDictionary]
2020-07-03 11:53:29 259 1
原创 IOS-NSBundle
一般我们从bundle中获取一张图片,可以有这样的获取思路:1)获取主bundle 2)获取自定义bundle 3)获取自定义bundle中的资源 //主bundle,也就是可执行的工程的bundleNSBundle *mainBundle = [NSBundle mainBundle];//NSBundle *mainBundle = [NSBundle bundleForClass:[self class]];//放在主工程中的自定义bundleNSString *myBundl
2020-06-23 10:32:05 370 1
原创 IOS- ZFIJKPlayerManager ZFAVPlayerManager
IJKFFMoviePlayerController 直播IJKAVMoviePlayerController 点播 ,需要修改ZFIJKPlayerManager 中player 为IJKAVMoviePlayerController
2020-01-20 16:50:48 2232
转载 iOS面试题:Socket原理
1、套接字(socket)概念套接字(socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。应 用层通过传输层进行数据通信时,TCP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序...
2019-12-27 11:19:53 1138
转载 图片的解压缩到渲染过程
一.图像从文件到屏幕过程通常计算机在显示是CPU与GPU协同合作完成一次渲染.接下来我们了解一下CPU/GPU等在这样一次渲染过程中,具体的分工是什么?CPU: 计算视图frame,图片解码,需要绘制纹理图片通过数据总线交给GPU GPU: 纹理混合,顶点变换与计算,像素点的填充计算,渲染到帧缓冲区。 时钟信号:垂直同步信号V-Sync / 水平同步信号H-Sync。 iOS设备...
2019-12-26 11:00:36 375
转载 深入理解RunLoop
深入理解RunLoop由ibireme| 2015-05-18 |iOS,技术RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。IndexRunLoop 的...
2019-12-24 17:25:27 175
转载 RunLoop剖析
一、RunLoop概念RunLoop是通过内部维护的事件循环(Event Loop)来对事件/消息进行管理的一个对象。1、没有消息处理时,休眠已避免资源占用,由用户态切换到内核态(CPU-内核态和用户态)2、有消息需要处理时,立刻被唤醒,由内核态切换到用户态为什么main函数不会退出?int main(int argc, char * argv[]) { @aut...
2019-12-24 14:32:56 175
原创 IOS- 静态库制作
原理基本流程什么网上很多老郏桌面新建文件夹 终端cdlipo -create 2拖进去3拖进去 -output TestFramework (看好空格)将生成的TestFramework替换2或3,拖进工程就可以测试了...
2019-12-11 16:07:39 144
转载 认识CALayer 离屏渲染 缘由 优化
layer和view的关系开始开发都是从view开始,而且很长一段时间可能都只认识到view,而只会在某些角落看见layer,比如圆角,比如coreAnimation动画,还有绘制内容时也使用CALayer,所以对于layer的首要疑问肯定是:这货跟view到底什么关系?出自 WWDC 2012- iOS App Performance- Graphics and Animations...
2019-12-09 16:31:20 361
TexturePacker for mac ,ImageOptim for mac无损压缩
2019-05-09
Java从入门到精通
2017-07-19
IOS7 & Andriod界面设计规范
2015-04-17
AFNetworking-2.0. 测试DEMO 再封装 以及初级资源网址
2015-03-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人