自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(381)
  • 资源 (51)
  • 收藏
  • 关注

原创 iOS开发之如何保证控件位置不变,增加触控范围(即frame和bounds的区别)

大佬儿们,我又双叒叕的来了,大家有没有被问到过frame和bounds有什么区别这样的面试题?或者是如何保证Button位置不变,增加点击范围这样的面试题? 什么?没有遇到过!!!哇,如果you know,大佬,大佬,我向你膜拜膜拜,如果you don`t know,那你真的是太幸运了,快来跟我一起揭开frame和bounds若隐若现的面纱吧! 首先,认识一下frame和bounds,两者都是CGRect类型的结构体,包含一个CGPoint(起点)和一个CGSi...

2020-08-20 20:53:36 607 1

原创 iOS开发之lldb调试命令

首先声明一点,这是把之前混合的博客内容,又进行了单独整理,望大家多多包含......开发过程中,我们难免需要断点调试,但是断点调试之后,我们想知道一些对象信息或者堆栈信息,应该怎么办?相信断点调试过的开发者都知道,断点执行后,会在输出框内出现(lldb)这样的字眼,此时,我们就需要相关的调试命令,然后输出我们想要的内容了,现在就开始简单的介绍一下吧!1、po命令print object的缩写,表示显示对象的文本描述,如果对象不存在,则打印为nil;比如:你想知道一个视图包含了哪些子视图,你可

2020-07-11 18:09:55 568

原创 iOS开发之如何优化App的电量

终于有时间整理一下,以前没来的及记录的知识点了,话不多说,开始表演......程序的耗电主要是四个方面:CPU处理,定位,网络,图像;对于这四个方面的优化,我们可以这么做:CPU处理:1、尽可能降低CPU、GPU的功耗,比如:少用定时器;2、优化I/O操作(什么,你不懂什么是I/O操作?简单的来说就是对数据的处理,读写操作),比如:不要频繁的写入小数据,而是积累到一定的数量再写入;读写大量的数据可以使用Dispatch_io,GCD内部已经做了优化;数据量比较大的时候,使用数据库;定

2020-07-09 22:20:46 472

原创 iOS开发之利用IJKPlayer+nginx+rtmp搭建直播的推流和拉流

最近项目中想实现直播的功能,所以研究了一段时间的直播功能,当然也是在别人的基础上不断的学习实现的,所以记录一下,希望对大家有所帮助。直播拉流功能:这里使用了开源的IJKPlayer第三框架,ijkplayer 是一款做视频直播的框架, 基于ffmpeg,是大多数搭建直播平台的首选框架,当然各大云平台都有自己的直播框架,具体大家使用的时候可以自行研究,有问题再留言,我这里不再说明框架的集成和拉流过程

2017-06-29 15:51:23 3275 1

原创 MAC端Git安装,命令使用以及环境搭建

MAC上的git配置,配置用户名和用户邮箱,以后每次与Git的交互都会使用该信息。git config --global user.name "your_name" git config --global user.email "[email protected]"配置信息可以更改,以后想要更改使用上面指令就可以。同时可以使用git config --list指令查看Git的配.........

2017-02-15 15:12:01 7154 1

原创 iOS开发 runtime实现原理以及实际开发中的应用

自己写了一个小例子:有一些相关知识点和博客文章A: 首先现在控制器里面初始化一个对象,然后调用对象的方法:#import "ViewController.h"#import "Message.h"#import "NSObject+AssociatedObject.h"@interface ViewController ()@end@implementation ViewC

2016-07-21 11:49:26 1263

原创 关于颜色色值和对应名称的总结

颜色值定义HTML颜色为红,绿,蓝三色值(RGB)的组合使用一个十六进制表示法(十六进制)。可以给光源之一的最低值是0(十六进制:00)。最高值是255(十六进制:FF)。被指定为十六进制值3对两个数字,一个#符号开始。颜色颜色的十六进制颜色RGB#000000RGB(0,0,0)

2016-04-19 20:40:58 9234

原创 iOS开发之编译OpenSSL静态库

此时一个架构对应的libssl.a、libcrypto.a静态库和头文件已经生成,此时你需要把对应的架构文件夹,如openssl_arm64,放到一个自定义的文件夹下,当然也可以直接放到源码文件夹的上层文件夹下,然后删除源码文件夹,重新解压下载的OpenSSL源码压缩包,开始编译其他架构下的静态库,从第二步开始执行,一定要注意修改对应的架构名称,一定要注意修改对应的架构名称,一定要注意修改对应的架构名称,重要的事说三遍!

2023-09-13 14:14:43 1492

原创 iOS开发之查看静态库(.a/.framework)中包含的.o文件和函数符号(ar,nm命令)

符号的类型是以一个字母的形式显示的,小写字母表示这个符号是本地(local)的,而大写字母则表示这个符号是全局的(global,externel)。一般来说,类型有以下几种:T、D、B、U、W。.a/.framework其实是把编译生成的.o文件,打包成一个.a/.framework文件。W,weak的缩写,表示如果其他函数库中也有对这个符号的定义,则其他符号的定义可以覆盖这个定义;小写表示是本地符号,大写表示全局符号(external);U表示没有定义的,在这个库里面使用了,但是在其他库中定义的符号;

2023-08-24 14:25:10 2527

原创 iOS开发之Code:-402653103,Code:5

常见问题

2023-01-10 21:00:23 969 1

原创 iOS开发之layer.frame,layer.anchorPoint,layer.position对frame的影响

iOS开发之layer.frame,layer.anchorPoint,layer.position对frame的影响

2023-01-06 18:07:57 540

原创 iOS开发之iOS15.6之后拉流LFLiveKit,画面模糊及16.1马赛克问题

iOS开发之iOS15.6之后拉流LFLiveKit,画面模糊及16.1马赛克问题

2022-12-06 14:58:25 1204

原创 iOS开发之自定义的framework添加第三方framework,lipo和ar命令看.o文件

由于需要将之前生成的mediapipe.framework添加到自己的framework中,但是很奇怪用普通的拖拽方式添加,项目工程在加载运行自己的framework时,总是找不到mediapipe.framework中的头文件,而只编译自己的framework时,也是可以通过的,或者直接将mediapipe.framework添加到项目工程中,调用库中的方法也可以使用,所以在此记录一下遇到这种情况时,怎么处理。

2022-11-17 17:43:08 2333

原创 iOS开发之机器学习框架MediaPipe(5)

研究了这么长时间,终于可以写一下如何生成想要的功能包framework,然后放入自己的项目中了。

2022-11-11 14:55:53 2250 7

原创 iOS开发之机器学习框架MediaPipe(4)

兜兜转转大结局终于来了,是时候运行Demo,实践和检验成果了。

2022-10-27 17:46:14 1424 2

原创 iOS开发之Undefined symbol:_OBJC_CLASS_$_****

更新了Xcode14.0.1以后,项目突然曝出了此问题Undefined symbol:_OBJC_CLASS_$_****,因此记录一下,解决此问题的步骤

2022-10-27 14:42:56 15186

原创 iOS开发之机器学习框架MediaPipe(3)

上次Tulsi.app终于安装成功了,现在就是要通过Tulsi来运行MediaPipe中的机器学习的Demo在Xcode上运行起来,废话不多说,直接上手开始吧~

2022-10-26 11:34:26 1090 3

原创 iOS开发之机器学习框架MediaPipe(2)

上述操作完成后,接下来就是下载安装Tulsi.app、配置运行MediaPipe项目的操作。在这个过程中也是遇到了匪夷所思的问题,接着开始。

2022-10-24 20:54:11 1115

原创 iOS开发之机器学习框架MediaPipe(1)

MediaPipe是谷歌开源的机器学习框架,用于处理视频、音频等时间序列数据。MediaPipe Solutions提供了16个Solutions: 人脸检测、Face Mesh(面部网格)、虹膜、手势、姿态、人体、人物分割、头发分割、目标检测、Box Tracking、Instant Motion Tracking、3D目标检测、特征匹配等。

2022-10-13 21:03:05 1464 1

原创 Python基础入门之数据结构简汇

这篇主要是结合前面所学的知识点来介绍Python数据结构。

2022-10-09 17:14:47 114

原创 iOS开发之The code signature version is no longer supported.

遇见此问题,解决方法一:Build Setting -> Other Code Signing Flags 添加 --generate-entitlement-der解决方法二:Xcode > Target > General 找到 "Embedded Framework, Libraries and Embedded Content" Set all frameworks in theEmbeddedfield to "Do not Embed"我的就是使用方法..

2022-05-25 16:12:35 703

原创 WebRTC开发之iOS15.4快速晃动,远端观看卡顿掉帧问题

前两周刚刚更新了iOS15.4的系统,然后就发现了一个奇怪的问题,在iOS15.4的手机上安装音视频Demo,快速晃动时,远端看到的画面会卡顿,并且掉帧、帧率下降、不断变化,然而在其他系统手机上,却没有问题,所以是为什么?1、难道是iOS15.4系统的采集修改,所以丢掉了部分帧?2、难道是iOS15.4系统的硬编码修改,所以丢掉了部分帧?3、难道是iOS15.4系统与WebRTC不匹配,所以WebRTC丢掉了部分帧?根据这些猜想和疑问,在采集和编码处分别添加输出语句,测试多次发现:设置帧率1

2022-03-30 18:32:45 1571 1

原创 WebRTC开发之webrtc/depot_tools/gn: line 8: exec: python: not found

最近更新了Mac系统macOS Monterey和最新的Xcode13.3,然后发现webrtc无法编译了,出现了如下问题:于是根据图片问题提示,打开gn文件,发现写的是“python”,记得以前Mac自带python2.7,文件代码写的没问题啊,怎么回事?于是打开终端查看python,发现竟然找不到,查看了Mac最新的系统介绍,发现Mac竟然把自带的python2.7改成了自带python3了,哇,好坑......首先,我先把gn代码改成了python3,终端输入gn,发现可以运行,.

2022-03-21 14:13:30 1807 1

原创 《蛙》杂记------莫言

“父亲兴奋地说:好,是头小母牛!姑姑气哄哄地说:真是奇怪,女人生了女孩,男人就耷拉脸;牛生了小母牛,男人就咧嘴乐!父亲说:小母牛长大了可以繁殖小牛啊!姑姑说:人呢?小女孩长大了不也可以生小孩儿吗?父亲说:那可不一样。姑姑说:有什么不一样!” ------摘自第一部分 “我想起母亲生前不止一次地...

2022-03-02 18:08:48 389

原创 iOS开发之strip处理framework的调试符号

iOS安全,符号表中有些符号是必须的,但是很多符号都是可以去掉的,符号表中可以看到很多暴露的类名、函数名,让攻击者可以看到有哪些关键的逻辑,所以要剥去、除去不必要的符号表,这样也可以将framework包进行瘦身,删除framework中的调试符号,首先 cd 到framework文件夹下,然后执行:strip -S -X (包名)...

2021-12-17 17:54:48 2471

原创 Python基础入门之二进制的负数

刚刚介绍了位运算符,里面涉及到了二进制的运算,出现了a = 60,~a = 1100 0011 = -61的计算,所以这里记录一下二进制的负数表示和计算。二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。在二进制码

2021-12-12 22:26:04 4519 1

原创 Python基础入门之位运算符

位运算符是将数字转换成二进制的形式,然后进行计算。例如:a = 60,b = 13,a & b = 12,这是因为a、b转换成二进制为a = 0011 1100,b = 0000 1101,a & b = 0000 1100 = 12,位运算符包含以下几种:位运算符 含义 实例:a = 60 = 0011 1100, b = 13 = 0000 1101 & 与:参与运算的两个值,如果两个...

2021-12-12 21:07:13 891

原创 《新参者-加贺恭一郎》、《麦田里的守望者》杂记

《新参者-加贺恭一郎》杂记---东野圭吾、著《麦田里的守望者》杂记-----杰罗姆·大卫·塞林格、著

2021-11-22 11:51:33 406 1

原创 《将军吟》杂记---莫应丰、著、人民文学出版社

茅盾文学奖

2021-11-16 12:00:56 232

原创 《朱雀》杂记---葛亮、著、作家出版社

青龙、白虎、朱雀、玄武

2021-11-08 15:37:42 362

原创 WebRTC音视频之iOS屏幕共享画面静止时,如何传递视频数据

iOS的屏幕共享画面

2021-10-27 20:00:00 1198 2

原创 WebRTC音视频之噪音消除功能

WebRTC对于iOS和Android的音频处理,是有很大的不同的,WebRTC基本上是使用的iOS自身的音频降噪、环境音处理、人声增益处理,因为WebRTC认为iOS的音频处理已经满足相对理想的效果,所以在算法处理上进行了iOS和Android的区分。...

2021-10-26 20:03:44 3273 1

原创 WebRTC音视频之美颜开启后小流闪烁问题

美颜开启后,打开双流,远端查看小流时,小流闪烁问题项目中使用的是GPUImage进行的美颜处理,添加了美白、磨皮、亮光,但是当开启美颜效果后,如果只使用大流进行查看视频,视频美颜正常,画面正常,但是如果使用小流查看美颜画面,视频画面中会偶尔闪烁黑块,类似于大块马赛克效果,然后进行分析,如果将美颜效果关闭,小流视频画面正常,视频处理流程:将采集到的视频画面,进行YUV或者RGB美颜渲染处理,然后将画面帧传递给WebRTC进行编码,最后上行给服务器,下发给远端观看。猜测,既然关闭美颜画面,小流画面没有问

2021-10-13 01:00:00 577

原创 WebRTC音视频之优化音频造成的内存增长和增加大小流

1、关于多人通话内存不断增长的问题在旧版本iPhone上(比如:iPhone6、6s、7),四人及以上通话,造成内存不断增长,使用Instrument工具分析,是因为audioFrame创建过快,再加上人数过多以后,CPU处理能力跟不上,释放audioFrame对象逐渐变慢,造成内存逐步上涨,后来查看了线程等级和使用位置,进行了调整,将原来的AudioEncoder线程的等级从NORMAL提高到了HIGH,视图如下:其实也可以通过修改其他两个关于video和stream的线程等级达到效果,但是.

2021-10-11 14:13:57 1384

原创 常用知识之CMSampleBufferRef系

//// ViewController.m// Demo//// Created by on 2021/9/28.//#import "ViewController.h"#import <CoreMedia/CoreMedia.h>@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; .

2021-09-29 11:01:07 2138

原创 常用知识之iOS15代码、功能、属性新适配

环境工具:iOS15、Xcode131、UINavigationBar、UITabBar、UIToolBar部分属性在iOS15上是无效的,比如:导航栏颜色、字体颜色、阴影设置等,需要使用iOS13更新的API中UINavigationBarAppearance、UITabBarAppearance的实例对象来设置。对导航栏的性能做了优化,默认情况下,如果导航栏与视图没有重叠,导航栏的背景透明,如果重叠,会变成模糊的效果。如果想要一直就是模糊效果,可以通过改变scrollEdgeAppearan

2021-09-22 16:23:47 1095

原创 常用知识之将Demo上传到Github上的操作步骤(2021.09)

早在2016.08就整理过一篇相关文章:将项目Demo上传到Github上的操作步骤_hbblzjy的博客-CSDN博客之前我有很多代码直接上传到了CSDN上,主要是因为操作方便,今天我就说说将源码Demo上传到Github上的操作步骤。首先,你要先确定自己在Github上有自己的账户名,账户邮箱和密码。如果没有可以先去https://github.com注册,如果有了可以点击Sign In登录。之后,我们开始进行命令行操作(当然你也可以下载客户端进行操作)打开终端,输入:第一步:git init第二步:g

2021-09-14 15:19:26 213

原创 OC常用知识点之陀螺仪测方向

简单记录一下,封装了一个BHMotionOrientation类,以供大家参考,当然demo也添加了一view的基础旋转。//// BHMotionOrientation.h// MotionOrientationDemo//// Created by JasonHam on 2021/9/13.//#import <Foundation/Foundation.h>NS_ASSUME_NONNULL_BEGINtypedef NS_ENUM(NSInteger,

2021-09-14 09:53:31 373

原创 2021年开学寄语

时光荏苒,如白驹过隙,如白云苍狗,2021年开学的钟声已经响起,各地学子陆续步入校园,响起2012年的自己,不禁感慨万千。感慨高考之前的少年稚嫩和美好的学习时光,感慨高考之后将要步入的大学生活,憧憬着未来。如今想起,会有很多遗憾,但快乐的时光依然历历在目,往事已然随风,在此祝愿广大学子,不忘初心,不负韶华。 以下摘自网络,2021清华大学开学典礼演讲稿: 首先请允许我代表我的同事们向今天(9月2日)入学的2021级同学们表示最热烈的祝贺!每一级的清华人都是特殊的,但是...

2021-09-06 11:56:02 160

原创 观景所思,场景:借钱

姐姐:能再借给我2w不?急着给辰辰交学费了,咱妈那之前给她说好了准备钱了,结果现在没钱[流泪]弟弟:好,知道了姐姐:谢谢你了弟弟:我就说一句话,不要坐吃山空姐姐:嗯,我知道了弟弟:转哪里?姐姐:建行有没有弟弟:给卡号姐姐:62***************8弟弟:户名姐姐:******弟弟:转过了弟弟:咱妈还欠你多少钱?姐姐:好像四万多姐姐:好的,谢谢,谢谢你了,好弟弟姐姐:收到了弟弟:我想了很久,有必要说一些姐弟间的心里话,不论你有没有听进去

2021-08-27 15:07:51 142

Swift基础之DelegateDemo

Swift基础之DelegateDemo

2016-08-08

iOS导航头像缩放Demo

iOS导航头像缩放Demo,在很多App中,经常存在一种需求就是,界面上下滚动时用户的头像也会跟着滚动,而用户头像在视图向上滚动一定范围时停留并在导航栏的位置

2016-08-08

Swift基础之PickerView选择器Demo

Swift基础之PickerView选择器Demo

2016-08-02

第三方Charts绘制图表四种形式Demo

第三方Charts绘制图表四种形式Demo

2016-07-27

ijkplayer框架电视直播Demo

ijkplayer框架电视直播Demo

2016-07-27

富文本AttributedStringDemo

富文本AttributedStringDemo

2016-07-25

MVVM、图片选择封装(UICollectionView)、富文本封装(NSAttributedString)、引导动画(Animation)四个知识点Demo

MVVM、图片选择封装(UICollectionView)、富文本封装(NSAttributedString)、引导动画(Animation)四个知识点Demo

2016-07-25

烟花Demo两种语言OC和Swift

烟花OC和SwiftDemo

2016-07-24

仿滴滴抢单倒计时Demo

仿滴滴抢单倒计时Demo

2016-07-20

利用第三方实现折叠树Demo

利用第三方实现折叠树Demo

2016-07-19

日历显示,并且可选日期MyDemo

当前日期前后都可显示的日历,选择日子后,可以存储,切换月份可以继续显示之前选择过的日子

2016-07-11

常用宏定义#define

常用宏定义#define

2016-07-08

复杂动画详细讲解Demo

复杂动画详细讲解Demo

2016-07-01

App启动加载广告页面Demo

App启动加载广告页面Demo

2016-07-01

VTMagic类似于网易新闻切换标题的第三方Demo

VTMagic类似于网易新闻切换标题的第三方Demo

2016-06-30

超好用的JRDB对FMDB的封装Demo

一个对FMDB进行类Hibernate封装的iOS库,支持Objective-C 和 Swift。

2016-06-23

自己封装的下载管理Demo

本篇文章是有demo的,但是demo中笔者将下载资源去掉了。如果大家想要测试效果,只能自寻找下载资源链接

2016-06-23

iOS一行代码进行RSA、DES 、AES、MD5加密、解密Demo

iOS一行代码进行RSA、DES 、AES、MD5加密、解密Demo

2016-06-22

MVVMMDemo测试

MVVMM模式解决了ViewModel的臃肿并方便单元测试

2016-06-21

iOSRadarChart雷达效果

简单地雷达效果数据展示图,有对应的相关博客可以进行参考

2016-06-20

YYKit之YYText例子

YYKit之YYText例子,富文本使用

2017-07-04

Swift基础之仿资讯类实现频道的长按拖拽

Swift基础之仿资讯类实现频道的长按拖拽

2017-04-06

简单语音样式Demo

简单语音样式Demo

2017-03-22

好用多样的滑动视图Demo

好用多样的滑动视图Demo

2017-03-20

夜间模式DKNightVersion使用Demo

夜间模式DKNightVersion使用Demo

2017-03-13

好用的多样的搜索界面样式OCDemo

好用的多样的搜索界面样式OCDemo

2016-11-08

字数不一的多标签Demo

字数不一的多标签Demo

2016-10-27

Swift基础之FMDB的使用Demo

Swift基础之FMDB的使用Demo

2016-10-21

自己封装的提示框(警告框)Demo

自己封装的提示框警告框Demo

2016-10-19

Swift基础之绘制折线Demo

Swift基础之绘制折线Demo

2016-10-12

Swift基础之动画开发

Swift基础之动画开发

2016-10-08

Swift单选横竖样式Demo

Swift单选横竖样式Demo

2016-09-30

Swift波纹样式Demo

Swift波纹样式Demo

2016-09-15

Swift镂空图片Demo

Swift镂空图片Demo

2016-09-06

Swift之闭包ClosureDemo

Swift之闭包ClosureDemo

2016-09-02

积分抽奖Demo

积分抽奖Demo,可以人为控制指针的落点区域,从而控制不同奖项的概率

2016-09-01

可点击的两种轮转方式Demo

可点击的两种轮转方式Demo

2016-08-25

Swift和OC代码的相互使用

Swift和OC代码的相互使用

2016-08-23

OC下拉变大上拉缩小和Swift下拉变大Demo

OC下拉变大上拉缩小和Swift下拉变大Demo

2016-08-18

仿京东商城选择地区样式Demo

仿京东商城选择地区样式Demo

2016-08-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除