1. AVAudioSession 概述 最近一年一直在做IPC Camera的iOS客户端开发。和音频打交道,必须要弄清楚AVAudioSession。先看下苹果的官方图:...

1. AVAudioSession 概述 最近一年一直在做IPC Camera的iOS客户端开发。和音频打交道,必须要弄清楚AVAudioSession。先看下苹果的官方图:...
Na那你讲解一下什么是组件化。模块化和组件化有什么区别
607.【系统架构】模块化开发方法模块化开发方法是指把一个待开发的软件分解成若干个小的而且简单的部分,采用对复杂事物分而治之的经典原则。模块化开发方法设计的主要问题是模块设计的规则,即系统如何分解成模块。而每...
第二条搞错了,必须填写虚拟邮箱。
iOS 内购(In-App Purchase)踩坑1.App 内购时,提示说:此时没有权限在Sandbox购买此InApp 2.添加 Sandbox 测试账号,注册时填写邮箱,点击邀请,然后登录刚刚的邮箱,验证地址就可以免费...
更新一下。变了
iOS Facebook分享一、创建Facebook的应用https://developers.facebook.com[https://developers.facebook.com]1、点击我的应用...
我以前学习的时候。老师很少讲公式的原理。导致我一直无法理解公式的意义。
《二次函数y=a(x-h)^2+k的图象和性质》教学反思二次函数y=a(x-h)^2+k的图象,我是用《几何画板》制作了以a、h、k为参数的二次函数解析式进行动态演示,任意改变a、h、k的值,学生可根据对比y=ax^2的图象,归纳...
什么是退休。
有多少钱你可以退休刚才大数据推送的问题,你认为有多少钱可以退休? 其实,我对这个问题不是很感兴趣,对我而言,哪有什么退休生活,我会一直工作,干活儿。 在金钱上,我不是个富足的人,能力所限,挣钱...
这里为什么使用哈希表 ?
iOS 开发:『Crash 防护系统』(二)KVO 防护本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-carsh-defen...
这里我也有点问题,既然需要退出loop,为什么互动scrollView的时候,可以直接切换模式?
iOS 多线程:『RunLoop』详尽总结本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...
不知理解是否到位。
1 同步串行队列
同步执行串行队列,无需创建新线程。
2 同步并行队列
同步执行并行队列,既然是同步,怎么会多线程并行?两者冲突。无需创建新线程,可主线程上跑。
3 异步串行队列
异步执行串行队列,创建一条线程即实现串行,和主线程平行。
4 异步并行队列
异步执行并行任务,自动创建多条线程,和主线程平行。
5 同步主队列
同步执行主队列,两条主线程同步相互争夺资源导致锁死。
6 异步主队列
异步执行主队列。即是把主队列放到了异步去跑,主队列只由一个线程,所以相当于在主线程跑。
iOS 多线程:「GCD」详尽总结本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-foundation-...
所以终于明白 到底该什么时候用retain和strong了。
那weak呢?weak就是在arc中使用的吗?
iOS 开发:彻底理解 iOS 内存管理(MRC、ARC)本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-memory-mana...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-memory-mana...
swift 可以使用吗?貌似还是找不到
override class func resolveInstanceMethod(_ sel: Selector!) -> Bool {
if (sel == Selector(("fun"))) {
if let method = class_getInstanceMethod(self, #selector(funMethod)) {
class_addMethod(self, sel, method, "v@:")
}
}
return super.resolveInstanceMethod(sel)
}
@objc func funMethod(id:AnyObject, _cmd: Selector) -> Void {
print("funMethod")
}
iOS 开发:『Runtime』详解(一)基础知识本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-runtime-01/...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-runtime-01/...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...
本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https://itcharge.cn/ios-complete-le...