• Stars
    star
    1,217
  • Rank 38,518 (Top 0.8 %)
  • Language
    Objective-C
  • License
    MIT License
  • Created about 5 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

iOS的一些示例,持续更新中:1、AVFoundation 高仿微信相机拍摄和编辑 2、AVFoundation 人脸检测、实时滤镜、音视频编解码、GPUImage框架的使用等音视频相关内容 3、OpenGLES 4、LeetCode算法练习 5、iOS Crash防护和APM监控 6、WKWebView相关的内容 等........

iOS_Tips

iOS的一些示例,不定时更新~

简书 掘金
CSDN 微博

目录

1、暗黑模式
2、AppleID登录应用
3、AVFoundation相关

3.1、AVFoundation 高仿微信相机拍摄和编辑
3.2、AVFoundation 人脸检测
3.3、AVFoundation 实时滤镜
3.4、GPUImage框架的使用
3.5、VideoToolBox和AudioToolBox音视频编解码
3.6、AVFoundation 利用摄像头实时识别物体颜色
3.7、AVFoundation 原生二维码扫描识别和生成

4、OpenGL ES学习
5、LeetCode算法练习
6、工作中踩过的坑

6.1、键盘和UIMenuController不能同时存在的问题
6.2、全屏侧滑手势/UIScrollView/UISlider间滑动手势冲突
6.3、UITableView/UICollectionView获取特定位置的cell
6.4、UIScrollView视觉差动画
6.5、iOS 传感器集锦
6.6、iOS 自定义转场动画
6.7、二进制重排优化启动速度
6.8、iOS APM应用性能监控管理(doing)
6.9、ipa瘦身之扫描无用资源
6.10、多个UIScrollView嵌套/个人中心页

7、iOS Crash防护
8、WKWebView相关

8.1、WKWebView的使用
8.2、WKWebView+UITableView混排
8.3、WKWebView离线缓存功能
8.4、Html非文本元素替换为原生组件展示
8.5、UIScrollView实现原理
8.6、UITableView的实现原理

高质量技术博客集合
结尾

1-暗黑模式适配

暗黑模式

2-AppleID登录应用

  • 查看本仓库下的AddingTheSignInWithAppleFlowToYourApp

3-AVFoundation相关

3.1-微信相机拍摄照片、小视频以及编辑功能

效果描述:

  • 1、自定义相机 拍摄视频和照片
  • 2、切换前后摄像头、调整焦距/设置聚焦点、横屏拍摄
  • 3、视频编辑:涂鸦、gif贴图、文字水印、视频裁剪 、添加背景音乐
  • 4 、图片编辑:涂鸦、贴图、文字水印、马赛克、图片裁剪

主要类:SLAvCaptureTool(音视频采集录制工具)、SLAvEditExport(导出编辑的音视频)。关于视频的压缩问题,可以通过降低采集时的分辨率sessionPreset、降低写入文件时的分辨率(AVVideoWidthKey宽AVVideoHeightKey高)和码率(AVVideoCodecKey)、指定高的FormatProfile(AVVideoProfileLevelKey)等方法来实现,同时也要保证一定的清晰度满足业务的需求, 可以看看这篇文章https://www.jianshu.com/p/4f69c22c6dce

拍摄视频.gif 拍摄照片 横屏视频
视频编辑 视频编辑 图片编辑
图片编辑 图片裁剪

3.2-人脸检测

人脸识别

3.3-实时滤镜拍摄和导出

主要类: 是由SLAvCaptureTool拆分的 SLAvCaptureSession(采集) + SLAvWriterInput(录制) 两个工具类,方便扩展,录制写入实现的方式也略有不同

人脸识别

3.4-GPUImage框架的使用

效果描述:实时拍摄添加水印和滤镜、本地视频添加水印、GIF图水印

GPUImage框架的使用

3.5-VideoToolBox和AudioToolBox音视频编解码

请查看本仓库下的 VideoEncoder&Decoder 文件

音视频编码

3.6-AVFoundation 利用摄像头实时识别物体颜色

音视频编码

3.7-AVFoundation 原生二维码扫描识别和生成

该代码地址在:https://github.com/wsl2ls/ScanQRcode

4-OpenGLES学习

示例描述:

  • 1、GLKit 绘制图片和正方体
  • 2、GLSL 绘制金字塔、颜色纹理混合
  • 3、GLSL 滤镜集合:灰度、旋涡、正方形马赛克、六边形马赛克
  • 4 、GLSL 抖音部分特效:分屏、缩放、抖动、灵魂出窍、毛刺

|OpenGLES学习.gif|OpenGLES学习|OpenGLES学习|

5-LeetCode算法练习

LeetCode算法练习集合(Swift版) ~ 每天一道算法题

6-工作中踩过的坑

6.1-键盘和UIMenuController的并存问题

| 问题描述.gif | 并存问题解决 |

6.2-全屏侧滑手势/UIScrollView/UISlider间滑动手势冲突

6.3-UITableView/UICollectionView获取特定位置的cell

6.4-UIScrollView视觉差动画

6.5-iOS 传感器集锦

6.6-iOS 自定义转场动画

6.7-二进制重排优化启动速度

6.8-iOS APM应用性能监控管理(doing)

CPU占用率、内存/磁盘使用率、卡顿监控定位、Crash防护、线程数量监控、网络监控(TCP 建立连接时间 、DNS 时间、 SSL时间、首包时间、响应时间 、流量)、ViewController启动耗时监测 、load方法的耗时、方法执行耗时......

6.9、ipa瘦身之扫描无用资源

扫描项目中无用的图片、类等文件资源, 此示例主要针对于此项目中的图片资源,其他类型资源实现原理相同。

6.10、多个UIScrollView嵌套/个人中心页

多个UIScrollView嵌套

7-iOSCrash防护

Crash防护内容涉及 NSArray/NSMutableArray、NSDictionary/NSMutableDictionary、NSString/NSMutableString、Unrecognized Selector、KVO、KVC 、异步线程刷新UI、野指针定位、内存泄漏/循环引用;主要是对常见易错的地方进行容错处理,避免崩溃,并保存出错时的函数调用栈,以方便快速定位代码,主要是利用的runtime和fishook知识。

iOSCrash防护

8-WKWebView相关

WKWebView的使用WKWebView+UITableView混排、WKWebView离线缓存功能、HTML非文本元素替换为原生组件展示、UIScrollView实现原理、UITableView的实现原理

WKWebView相关

结尾

  • 1、主工程就是iOS_Tips下的DarkMode,别怀疑🤣,历史遗留问题😁😀,大部分内容都在里面,run一下就明白了🤝
  • 2、该demo里面有些功能还没有写博客介绍,后期有时间会补上,不过代码我一般喜欢写注释,所以我相信大家读起来应该也容易理解,建议大家看完之后,自己也可以写写,把整个流程过一遍,也许会比我写的更好哟;
  • 3、看过的高质量技术博客集合,这些博客质量都挺高的,都出自各个大厂、大佬之手,认真看完绝对干活满满;
  • 4、小视频拍摄录制失败,主要集中在plus和X系列手机上:可能是由于写入的视频宽高videoSize设置的问题,各位可以先试试这样设置 avCaptureTool.videoSize = CGSizeMake(self.view.width * 0.8, self.view.height * 0.8);
  • 5、当你编译的时候,XCode出现Unable to load contents of file list 错误,导致出现此原因是pods版本不一致,请更新pods版本或者重新安装。
  • 6、如果发现我简书或掘金上的文章无法查看了,请联系我。

Welcome to you 👏 您的follow和start,是我前进的动力,Thanks♪(・ω・)ノ 🤝

简书 掘金 QQ交流群 微信公众号 微信交流群
CSDN 微博 835303405 iOS2679114653 w2679114653(加我拉入群)

回到顶部

QQ交流群: 835303405

欢迎扫描下方二维码关注——奔跑的程序猿iOSer——微信公众号:iOS2679114653 本公众号是一个iOS开发者们的分享,交流,学习平台,会不定时的发送技术干货,源码,也欢迎大家积极踊跃投稿,(择优上头条) ^_^分享自己开发攻城的过程,心得,相互学习,共同进步,成为攻城狮中的翘楚!

奔跑的程序猿iOSer

More Repositories

1

WKWebView

WKWebView的使用、JS和OC的交互、网页内容加载进度条的实现、WKWebView+UITableView混排 、 WKWebView离线缓存
Objective-C
474
star
2

WSLWaterFlowLayout

功能描述:WSLWaterFlowLayout 是在继承于UICollectionViewLayout的基础上封装的控件, 目前支持竖向瀑布流(item等宽不等高、支持头脚视图)、水平瀑布流(item等高不等宽 不支持头脚视图)、竖向瀑布流( item等高不等宽、支持头脚视图)、栅格布局瀑布流 4种样式的瀑布流布局。
Objective-C
333
star
3

LyricsAnalysis

iOS音乐播放器之锁屏效果(仿网易云音乐和QQ音乐)+歌词解析 :锁屏歌曲信息、控制台远程控制音乐播放:暂停/播放、上一首/下一首、快进/快退、列表菜单弹框和拖拽控制台的进度条调节进度(结合了QQ音乐和网易云音乐在锁屏状态下的效果)、歌词解析并随音乐滚动显示。
Objective-C
195
star
4

UIActivityViewController

仿简书分享--系统原生分享:利用UIActivityViewController实现系统原生分享,不需要三方SDK,支持自定义分享,可以分享到微博、微信、QQ、信息、邮件、备忘录、通讯录、剪贴板、FaceBook.....等等
Objective-C
150
star
5

WSLTransferAnimation

iOS 自定义转场动画集锦:新浪微博图片浏览转场效果、网易云音乐启动屏转场动画、手势过渡动画、开关门动画、全屏侧滑Pop返回和UIScrollView、UISlider三者手势滑动事件冲突
Objective-C
143
star
6

ScanQRcode

功能描述:WSLNativeScanTool是在利用原生API的条件下封装的二维码扫描工具,支持二维码的扫描、识别图中二维码、生成自定义颜色和中心图标的二维码、监测环境亮度、打开闪光灯这些功能;WSLScanView是参照微信封装的一个扫一扫界面,支持线条颜色、大小、动画图片、矩形扫描框样式的自定义;这个示例本身就是仿照微信的扫一扫功能实现的。
Objective-C
102
star
7

UITableViewLinkage

iOS UITableView/UICollectionView获取特定位置的cell,解决UITableView/UICollectionView联动、获取处于UITableView/UICollectionView中心的cell等这类与特定cell位置有关的问题
Objective-C
76
star
8

UIScrollViewAnimation

UIScrollView视觉差动画,仿凤凰新闻的推荐新闻版块效果
Objective-C
72
star
9

SwiftStudy

Swift学习之微博朋友圈列表功能实现
Swift
70
star
10

WSLAPP

音乐播放器,新闻,壁纸,画板,二维码,计分器,一个我自己做的完整的项目源码
Objective-C
62
star
11

MultilevelList

TableView多级列表:分级展开或合并,逐级获取并展示其子级数据,可以设置最大的层级数,支持多选、单选、取消选择。
Objective-C
61
star
12

SensorDemo

指纹识别、运动传感器、加速计、环境光感、距离传感器、指南针、陀螺仪等传感器示例集锦
Objective-C
58
star
13

WSL_RollView

功能描述:WSL_RollView 是基于UICollectionView实现的支持水平和垂直两个方向上的的分页和渐进循环轮播效果,可以设置时间间隔、渐进速率、是否循环、分页宽度和间隔,还支持高度自定义分页视图的控件。
Objective-C
57
star
14

Compass

高仿系统指南针效果
Objective-C
31
star
15

CoreDataLearn

CoreData增删改查、数据库升级
Objective-C
27
star
16

WSLPictureBrowser

功能描述:支持网络和本地gif、jpeg等格式图片的浏览、捏合或双击放大缩小、长按保存到本地相册、获取gif图片的循环次数和时长。
Objective-C
26
star
17

AlgorithmSet

LeetCode 算法练习集合 ~ 每天一道算法题
Swift
19
star
18

YanZhengCode

图片验证码和滑块验证码
Objective-C
12
star
19

ContactsSort

通讯录排序,类似微信通讯录
Objective-C
9
star
20

GOVAVPlayer

GOVVideoPlayer/GOVVideoController是一个基于AVPlayer封装的视频播放器,支持播放/暂停、左右退拽快进、上下滑动调节音量、有缓冲进度指示条、和卡顿指示器.
Objective-C
7
star
21

AppIconBadge

解决在前台时重启应用和设置应用角标的问题
Objective-C
6
star
22

Draw

涂鸦画板:画笔颜色、粗细、橡皮擦、撤销功能等
Objective-C
6
star
23

WSLScrollView

UIScrollerView当前显示3张图:这是在继承UIView的基础上利用UIScrollerView进行了封装,支持循环轮播、自动轮播、自定义时间间隔、图片间隔、当前页码和图片大小,采用Block返回当前页码和处理当前点击事件的一个View。
Objective-C
2
star
24

Wsl2Ls.github.io

欢迎来前往我的博客查看效果 https://wsl2ls.github.io 或者我的简书:https://www.jianshu.com/p/55bf6559aa93
HTML
1
star
25

iOS_TipsPreview

iOS_Tips系列效果预览图,示例代码主工程在 https://github.com/wsl2ls/iOS_Tips
1
star
26

iOS10NotificationAndRegularExpression

iOS10通知和正则表达式
Objective-C
1
star
27

progressLabelAndWaterProgress

水波纹进度和文字进度动画以及镂空文字
1
star
28

AlarmClock

闹铃,刮刮乐,拼图
Objective-C
1
star
29

APPInternational

APP国际化
Objective-C
1
star
30

MVx

MVC、MVP、MVVM 比较
Objective-C
1
star