1,支付宝
2,地图
3,环信
4,各种证书,工程打包
5,友盟统计
6,控制器view的尺寸及UI,由于Xcode升级引起的尺寸变化
7,工厂模式
8,加密证书验证失败(处理加密证书的代码,要考虑多种情况)
9, 登录界面的设置,登录成功之后,如何刷新所有界面的数据(用通知,还是???)
10,属性什么时候用strong什么时候用weak
11.解析友盟bug
12.解析崩溃
13.分享,不用第三方工具
压缩图片????
短信分享????
在搜房学到的知识点:***************友盟崩溃解析,(项目上线之后出现的崩溃解析)
***************第三方分享,(友盟,还有单个自己封装的分享)
***************重写tableView的下拉加载,上拉刷新功能。
***************手势界面的具体实现怎么说???
***************三方登录的界面是怎么做的???
***************属性的修饰词该怎么用???怎么理解??
***************环信聊天
***************极光推送(把证书传上去,SDK拖到工程中,按照文档写就可以)
***************UIToastView界面上的提示信息
***************
粘帖板是怎么个东东???
***************数据存储一类的需要再好好看一下
***************图片的拉伸
***************谷歌身份认证服务(动态口令),上github搜索『Google Authenticator』可以找到更多语言版的Google Authenticator。
***************SRWebSocket是个什么东东?
***************视频的播放存储????????
***************视频的大小,时间是怎么获取的???
***************本地存储的东西的大小怎么计算????
***************聊天记录的存储是怎么实现的????coreData??好好研究一下啦
***************二维码的生成
***************令牌的生成不能用,用户不能绑定???绑定之后解绑,又会出现什么情况
***************登陆界面出现卡顿的现象,后台一直在请求数据刷新界面,,,卡顿肯定是阻塞主线程
***************NSUserDefaults的实质是plist文件?????
***************硬解???
***************
socket连接和http连接的区别
/********qq通信原理
QQ都是使用UDP协议进行发送和接收“消息”的。当你的机器安装了QQ以后,实际上,你既是服务端(Server),又是客户端(Client)。当你登录QQ时,你的QQ作为Client连接到腾讯公司的主服务器上,当你“看谁在线”时,你的QQ又一次作为Client从QQ Server上读取在线网友名单。当你和你的QQ伙伴进行聊天时,如果你和对方的连接比较稳定,你和他的聊天内容都是以UDP的形式,在计算机之间传送。如果你和对方的连接不是很稳定,QQ服务器将为你们的聊天内容进行“中转”。大致过程就是:
1、用户首先从软件服务器上获取好友列表,以建立点对点的联系;
2、用户(Client1)和好友Client2之间采用UDP方式发送信息;
3、如果无法直接点对点联系,则用服务器中转的方式完成。
*/
1.
retain和strong是一致的(声明为强引用);assign和weak是基本一致的(声明为弱引用)。 之所以说它俩是基本一致是因为它俩还是有所不同的,weak严格的说应当叫“ 归零弱引用 ”,即当对象被销毁后,会自动的把它的指针置为nil,这样可以防止野指针错误。而assign销毁对象后不会把该对象的指针置nil,对象已经被销毁,但指针还在痴痴的指向它,这就成了野指针,这是比较危险的。
由于要进行内存管理的缘故,OC里的引用默认都是强引用,但为了避免出现”强引用循环僵局“,所以有了弱引用(assign)
retain和strong都是
指针拷贝。
当有其他对象引用当前对象时,会拷贝一份当前对象的地址,这样它就也指向当前对象了。所以,还是同一个对象,只是retainCount+1;
深拷贝(mutableCopy)和浅拷贝(copy):
深拷贝就是内容拷贝,浅拷贝就是指针拷贝。
在向您弱引用的对象发送消息时,您需要小心谨慎。如果您在一个对象被回收之后向它发送消息,您的应用程序将会崩溃。您必须为对象何时有效制定有明确界定的条件。在大多数情况下,被弱引用的对象知道其他对象对它的弱引用,这和循环引用的情况是一样的,并且它还能够在自己被回收时通知其他对象。例如,当您向通知中心注册一个对象的时候,通知中心会存储一个对该对象的弱引用,并且在适当的消息发布时,还会向该对象发送消息。当对象被回收时,您需要向通知中心解注册该对象,以防通知中心向这个已经不存在的对象继续发送消息。同样,当一个委托对象被回收时,您需要通过向其他对象发送一条带nil参数的setDelegate:消息来删除委托链接。这些消息通常由对象的dealloc方法发出。