iOS技术面试08:其他
1 客户端安全性处理方式?
1> 网络数据传输(敏感数据[账号\密码\消费数据\银行卡账号], 不能明文发送)
2> 协议的问题(自定义协议, 游戏代练)
3> 本地文件存储(游戏的存档)
4> 源代码
- sip是什么?
1> SIP(Session Initiation Protocol),会话发起协议
2> SIP是建立VOIP连接的 IETF 标准,IETF是全球互联网最具权威的技术标准化组织
3> 所谓VOIP,就是网络电话,直接用互联网打电话,不用耗手机话费
- 有些图片加载的比较慢怎么处理?你是怎么优化程序的性能的?
1> 图片下载放在异步线程
2> 图片下载过程中使用占位图片
3> 如果图片较大,可以考虑多线程断点下载
- 你实现过一个框架或者库以供别人使用么?如果有,请谈一谈构建框架或者库时候的经验;如果没有,请设想和设计框架的public的API,并指出大概需要如何做、需要注意一些什么方面,来使别人容易地使用你的框架。
1> 提供给外界的接口功能是否实用、够用
2> 别人使用我的框架时,能不能根据类名、方法名就猜出接口的具体作用
3> 别人调用接口时,提供的参数是否够用、调用起来是否简单
4> 别人使用我的框架时,要不要再导入依赖其他的框架
- App需要加载超大量的数据,给服务器发送请求,但是服务器卡住了如何解决?
1> 设置请求超时
2> 给用户提示请求超时
3> 根据用户操作再次请求数据
- 地图导航不能用了怎么办
提示用户打开导航定位功能
- SDWebImage具体如何实现
1> 利用NSOperationQueue和NSOperation下载图片, 还使用了GCD的一些函数(解码GIF图片)
2> 利用URL作为key,NSOperation作为value
3> 利用URL作为key,UIImage作为value
- AFN 与 ASI 有什么区别
1> AFN基于NSURL,ASI基于底层的CFNetwork框架,因此ASI的性能优于AFN
2> AFN采取block的方式处理请求,ASI最初采取delegate的方式处理请求,后面也增加了block的方式
3> AFN只封装了一些常用功能,满足基本需求,直接忽略了很多扩展功能,比如没有封装同步请求;ASI提供的功能较多,预留了各种接口和工具供开发者自行扩展
4> AFN直接解析服务器返回的JSON、XML等数据,而ASI比较原始,返回的是NSData二进制数据
- 你在实际开发中,有哪些手机架构与性能调试经验
1> 刚接手公司的旧项目时,模块特别多,而且几乎所有的代码都写在控制器里面,比如UI控件代码、网络请求代码、数据存储代码
2> 接下来采取MVC模式进行封装、重构
l 自定义UI控件封装内部的业务逻辑
l 封装网络请求工具类
l 封装数据存储工具类
- runloop定时源和输入源
1> 你创建的程序不需要显示的创建run loop;每个线程,包括程序的主线程(main thread)都有与之相应的run loop对象, 主线程会自行创建并运行run loop
2> Run loop处理的输入事件有两种不同的来源:输入源(input source)和定时源(timer source)
3> 输入源传递异步消息,通常来自于其他线程或者程序。定时源则传递同步消息,在特定时间或者一定的时间间隔发生
- 你们项目中都用了哪些框架, 及何种开发工具,具体到是哪个版本,这个版本的特性有哪些???(比如xcode的版本)
1> AFN、SDWebImage、MBProgressHUD等 (搜索: 网易新闻 第三方库)
2> Xcode 5.0
- 自己怎么实现原子锁
iOS中一般用nonaotomic
- 即时通讯中的大数据处理
用put上传到文件服务器,然后发带url的自定义格式的给对方,对方接收到之后下载
- json解析的具体实现
1> SBJson
2> JSONKit
3> NSJSONSerialization
- 如果在网络数据处理过程中,发现一处比较卡,一般怎么解决
1> 检查网络请求操作是否被放在主线程了
2> 看看异步请求的数量是否太多了(子线程数量)
3> 数据量是否太大?如果太大,先清除一些不必要的对象(看不见的数据、图片)
4> 手机CPU使用率和内存问题
- 怎么介绍一个项目
1> 项目的价值(可以加些“老板”关键字)
2> 项目的模块
3> 我做的是哪个模块
- 怎么解决sqlite锁定的问题
1> 设置数据库锁定的处理函数
int sqlite3_busy_handler(sqlite3*, int(*)(void*,int), void*);
2> 设定锁定时的等待时间
int sqlite3_busy_timeout(sqlite3*, 60); :
iOS技术面试08:其他的更多相关文章
- iOS技术面试01:多线程与网络
1. 多线程的底层实现? 1> 首先搞清楚什么是线程.什么是多线程.多线程的使用场合(线程有时被称为轻量级进程,是程序执行流的最小单元.多线程是指软件或者硬件实现多个线程并发执行的技术.多线程的 ...
- iOS技术面试07:第三方框架
1ios框架分为:cocoa Touch:UIKit.Foundation.附属框架 Media:OpenGL ES.EAGL.Quartz.Core Animation.Core Audio. ...
- iOS技术面试06:应用程序
1.NSRunLoop的实现机制,及在多线程中如何使用 NSRunLoop是IOS消息机制的处理模式 >1.NSRunLoop的主要作用:控制NSRunLoop里面线程的执行和休眠,在有事情做的 ...
- iOS技术面试03:Foundation
是否可以把比较耗时的操作放在NSNotificationCenter中 如果在异步线程发的通知,那么可以执行比较耗时的操作: 如果在主线程发的通知,那么就不可以执行比较耗时的操作 3.Foundati ...
- iOS搜索框UISearchBar 分类: ios技术 2015-04-03 08:55 82人阅读 评论(0) 收藏
当你在seachBar中输入字母之前的时候,只是用鼠标选中searchBar的时候,如图 终端输出截图如下:(这个时候调用先shouldBeginEditing,之后调用didBeginEditing ...
- 网络请求工具--AFNetworking 分类: ios技术 2015-02-03 08:17 76人阅读 评论(0) 收藏
在我们开发过程中,网络请求是必不可少的,对于网络框架,现在主流的大概只有三类:ASI框架: HTTP终结者(已经停止更新了),MKNetworkKit ,AFN.今天我就来浅谈一下这个AFN AFNe ...
- iOS技术面试05:UI控件
怎么解决缓存池满的问题 1> 优先移除使用次数比较少的对象 2> 优先移除缓存时间最长的对象(让年轻的活下来) 3> 优先移除占用内存比较大的对象 CAAnimation的层级结构 ...
- iOS技术面试04:数据存储
如果后期需要增加数据库中的字段怎么实现,如果不使用CoreData呢? 编写SQL语句来操作原来表中的字段 1> 增加表字段 ALTER TABLE 表名 ADD COLUMN 字段名 字段类型 ...
- iOS技术面试02:内存管理
怎么保证多人开发进行内存泄露的检查. 如何定位内存泄露? 1> 使用Analyze进行代码的静态分析(检测有无潜在的内存泄露) 2> 通过leak检查在程序运行过程中有无内存泄露 3> ...
随机推荐
- Tornado之Session实现
Tornado框架中,默认执行Handler的get/post等方法之前默认会执行 initialize方法,所以可以通过自定义的方式使得所有请求在处理前执行操作 import tornado.iol ...
- 2019-2020-1 20199312《Linux内核原理与分析》第一周作业
实验一:linux系统简介 Linux 本身只是操作系统的内核.内核是使其它程序能够运行的基础.它实现了多任务和硬件管理,用户或者系统管理员交互运行的所有程序实际上都运行在内核之上.其中有些程序是必需 ...
- Max Tree
Description Given an integer array with no duplicates. A max tree building on this array is defined ...
- springcloud系列
1.使用Spring Cloud搭建服务注册中心2.使用Spring Cloud搭建高可用服务注册中心3.Spring Cloud中服务的发现与消费4.Eureka中的核心概念5.什么是客户端负载均衡 ...
- 简单js的介绍
JavaScript 简介 JavaScript 是世界上最流行的编程语言. 这门语言可用于 HTML 和 web,更可广泛用于服务器.PC.笔记本电脑.平板电脑和智能手机等设备. JavaScrip ...
- hive on spark (spark2.0.0 hive2.3.3)
hive on spark真的很折腾人啊!!!!!!! 一.软件准备阶段 maven3.3.9 spark2.0.0 hive2.3.3 hadoop2.7.6 二.下载源码spark2.0.0,编译 ...
- 利用webuploader实现超大文件分片上传、断点续传
之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...
- 项目 java.lang.NoClassDefFoundError 异常。
项目部署之后调用接口失败:异常信息: NoClassDefFoundError ClassNotFoundException 注意这两种是有区别的. 具体转 https://www.cnblogs.c ...
- Codeforces Round #597 (Div. 2)
A - Good ol' Numbers Coloring 题意:有无穷个格子,给定 \(a,b\) ,按以下规则染色: \(0\) 号格子白色:当 \(i\) 为正整数, \(i\) 号格子当 \( ...
- [APIO2015]八邻旁之桥——非旋转treap
题目链接: [APIO2015]八邻旁之桥 对于$k=1$的情况: 对于起点和终点在同侧的直接计入答案:对于不在同侧的,可以发现答案就是所有点坐标与桥坐标的差之和+起点与终点不在同一侧的人数. 将所有 ...