1.生命周期(VC,对象);
2.友盟分享跳转失败的原因有哪些?;
3.Xcode怎么连接mysql数据库?需要配置哪些东西?
4.内存管理机制(ARC,MRC),简单说下MRC如何进行内存管理的。单例模式的对象是什么时候回收的?
http://bbs.itheima.com/thread-303920-1-1.html
5.做项目中遇到的问题?
6.之前项目中是如何加载图片的?如果禁用了sd,如何实现一个缓存中间件?
这段文字请忽略(先在缓存中查找有无该图片,如果缓存中没有,再通过path查找本地中是否有该图片,如果本地没有,通过云端重新下载该图片并将其缓存到缓存中。)
7.数据持久化(NSUserDefault,CoreData,Sqlite3,keychains。)
8.NSUserDefault存储形式:键值对;
NSUserDefault存储机制:
通过setValueForKey存储的信息最开始是存储在缓存区域里面的,过一段时间后才会存储在本地。所以使用这种方法做数据持久化,如果存完马上就要用,还需要调用一个同步方法,将缓存中的信息存到本地之后再读取信息。
9.keychains:(这个面试我的老大跟我说的是 不同的app可以共享,传递数据。)
keychain入门:
http://www.cnblogs.com/wws19125/p/5211551.html
http://m.w2bc.com/article/105653
http://m.blog.csdn.net/article/details?id=18707387
10.AFNetworking底层实现,原理;如果禁用AF,听过iOS原生的网络请求怎么实现?iOS原生的网络请求有哪些?
http://www.cocoachina.com/cms/wap.php?action=article&id=18277
11.列表(UITableview,UICollectionview)如何保证数据唯一性?
(或者这样说,列表在快速刷新的时候,是否遇见过数据重复问题?你是怎么解决的?)
12.GCD,NSOperationQueue等多线程问题;
13.多线程的概念?主要作用?多线程的实现方式有哪几种?如何创建一个线程池?如果线程有优先级又该如何处理?
iOS线程池:
http://m.blog.csdn.net/article/details?id=8000581
iOS多线程:
http://m.blog.csdn.net/article/details?id=44152605
这些是我面试了几家公司遇见的问题,总结来说就是基础不够扎实,扩展能力弱。记录在这里,给自己一个反思,同时也提醒下在找工作的iOS程序猿,不要一年的经验用几年,丰富下自己的阅历,你值得更好的舞台。
后面还会有更新。。
14.iOS优化 http://m.blog.csdn.net/article/details?id=17241043
15.iOS调用c库
16.iOS定时向服务器发送心跳包处理方法:
http://blog.csdn.net/zj510/article/details/8935683
可以在网上找一下AsyncSocket这个第三方库,创建socket连接之后启动NSTimer,定时发送心跳包就行。
17.调用支付接口超时怎么处理?
http://m.blog.csdn.net/article/details?id=54578528
http://www.cnblogs.com/mancong/p/5422192.html
用户支付后,支付宝通过HTTP协议通知网站该订单交易结果。说白了就是支付宝悄悄地告诉网站“这个订单已经已经付款啦”
值得注意的是,异步通知有重发机制,支付宝需要得到响应为"success"才认为该通知成功被接收,否则会间隔一段时间重发,依次间隔2m,10m,10m,1h,2h,6h,15h,最多8次通知,由notify_id说明是同一个通知 。8次通知都接收失败怎么办?额orz...文档没说,用那个支付宝订单号登录支付宝去查账吧。
18.在block中可以修改局部变量的值吗?怎么解决的?为什么?
不可以,在代码块中改变局部变量编译不通过;
解决办法:在局部变量前面加上关键字:__block;
__block相当于直接使用了指针,取该变量(&number)地址所指向的值。
19.极光推送的原理是怎么样的
20.常用的基本数据类型及应用到的场景
21.array 特点,自带的排序以及如何完成自定义的排序需要完成的事情?
NSArray特点:有序、定长、不可变、不可重复
利用NSArray实现自定义的排序需要实现的类:NSSortDescriptor
//自定义排序描述符举例
NSArray *originalArray = @[ @{@"page_no":@"27",@"age":@24}, @{@"page_no":@"1", @"age":@23}, @{@"page_no":@"1", @"age":@21}, @{@"page_no":@"1", @"age":@25}, @{@"page_no":@"1", @"age":@15}, @{@"page_no":@"12",@"age":@19}, @{@"page_no":@"23",@"age":@29}, @{@"page_no":@"3", @"age":@22}, @{@"page_no":@"2", @"age":@30}, @{@"page_no":@"17",@"age":@33} ]; NSSortDescriptor *alphaNumSD = [NSSortDescriptor sortDescriptorWithKey:@"page_no" ascending:YES comparator:^NSComparisonResult(NSString *string1, NSString *string2) { return [string1 compare:string2 options:NSNumericSearch]; }]; NSSortDescriptor *dataNumSD = [NSSortDescriptor sortDescriptorWithKey:@"age" ascending:YES comparator:^NSComparisonResult(id data1, id data2) { return [data1 compare:data2]; }]; NSArray *sortedArray = [originalArray sortedArrayUsingDescriptors:@[alphaNumSD,dataNumSD]]; NSLog(@"%@",sortedArray);
22.dictionary特点?
23.json常用的解析方式(三方,oc中自带的)
24.与js的交互,采用的是什么方式
25.storyboard与纯代码之间的区别及各自的优缺点
26.本地存储的几种方式?sqlite3中的缓存机制,除了列表,图片外哪些地方还用到了缓存?如何让本地数据库中的数据跟最新数据同步?
27.常用的类库(不知道是问第三方库还是系统中的库)
28.常用的设计模式,每个模式举个例子
29.版本管理工具,印象最深的作用
30.mvc与mvvm的区别,mvvm主要解决mvc中的什么问题
31.NSMutableArray内部是怎么实现可变的?
32.set特点
33.storyBoard创建tabbar时设置image和selectImage之后,图片并未正常显示,怎么解决?
34.iOS沙盒存储常用方法