iOS面试必备
发表于|更新于
|浏览量:
备忘
- 内存管理
- 推送原理
- viewController的生命周期,app的生命周期
- 事件响应链与传递链
- 数据库语句、CoreData
- 多线程
- Runtime
- Runloop
- 动画
- git、SVN
- 自动布局的实现,Masonry
- ReactiveCocoa
文章作者: 今是昨非
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 今是昨非的博客!
相关推荐
2022-04-13
Algorithem_Sort
Algorithem_SortGiven an integer array nums sorted in non-decreasing order, return an array of the squares of each number sorted in non-decreasing order. QuickSort实现逻辑:取指定位置的 index 的值key,比较index和 index之前的数字,如果前面的数字大于后面的数字,则交换位置; 比如: 123456789[ 8 3 5 1 4 2 ]从 index为1开始,当前元素3,前面元素8,8 > 3,故而交换位置,数组还为[ 3 8 5 1 4 2 ]然后 index 为2,当前元素为5,前面元素为8,8>5,故而交换位置,数组为[ 3 5 8 1 4 2 ]然后 index 为3,当前元素为1,前面元素为8,8>1,故而交换位置,数组为[ 3 5 1 8 4 2 ];5>1,故而交换位置,数组为[ 3 1 5 8 4 2 ];3>1,故而交换位置,数组为[ 1 3 5 8 4 2...
2021-11-23
iOS 接入 HTTPDNS
背景最近开发水印相机,遇到了用户网络正常,但是上传超时、上传失败的问题。通过听云后台看到接口错误记录中,用户的 localDNS 为空,于是就有了接入 HTTPDNS 的需求。 实践由于项目中网络请求使用的 AFNetworking 框架,接入第三方 HTTPDNS 后,需要修改 AFNetworking 中的内容,才能让请求走IP。 大致流程是接入 SDK——>注册 SDK——>获取 IP——>存储——>使用。这里可依据个人情况,在启动时进行 SDK注册,获取 IP 有两种方式,一是只在 APP 启动时获取一次,然后存储起来,APP使用过程中不需要更新。二是在 每次某个接口使用时都获取。 下面详细来看看接入的过程 阿里 HTTPDNS 按照快速入门中的步骤进行配置 添加域名,注意阿里的添加域名,可以添加全匹配和二级域名的方式 参考iOS SDK 接入进行接入 使用 CocoaPods 接入 这里到要骂人的地方了,按照阿里自己的官方文档上面写的 CocoaPod 安装的SDK不是最新的 12345source 'https://gith...
2022-12-06
部网络货运信息交互系统位置信息插件SDK接入总结
背景APP接入部网络货运信息交互平台,这里记录一下接入想法和过程。 实现iOS SDK提供的方法,共有下面6个 init start send pause restart stop 看起来很简单,但是需要考虑SDK某个方法可能会失败,而且可能会有同一个司机多个托运单、或者同一托运单分段多个司机运输以及托运过程中换车、司机运输中换手机等场景,想要持续记录位置信息,完成完整的一个单据链路就不那么容易了。 而这些场景的处理,需要服务端的协助,但是服务端没有和部网络货运信息平台直接交互的接口,无法直接从货运信息平台读取状态和数据,所以处理就显得麻烦了。 我们的设想是,服务端兜底处理异常,所以,首先要让服务端知道当前处理的单据和步骤,故而需要一个记录接口,每次执行SDK的方法后,成功或失败都同步给服务端。 为了避免出现其他手机或其他用户或后台手动关闭单子的情况,需要服务端提供另一个查询是否有待结束运单的接口,同样,这个接口在每次执行SDK的方法后,都要调用,用于获取是否有待关闭的运单。 而还有一种情况,即用户开始运单后,APP被杀掉了再次打开时,这时候应该执行SDK的什么方法?或者...
2017-02-20
iOS 自动打包
iOS 自动打包使用脚本实现自动打包,网上搜了好多,但是偶比较笨,一直发现不知道怎么使用,看了好久,终于改了个可以使用的,但是最后发现不能用xcrun导出;宝宝心里苦,但宝宝不说😂;接着改,最后终于被我捣鼓成功了,分享给大家一下 Note: 只是简单的基础版本的,这个支持的是没有使用Cocoapods的工程,,脚本见iOS自动打包_shell脚本;如果是使用Cocoapods工程的,可以稍微修改一下,鼓励大家自己试试,试好了顺便分享给我,😉 使用方法: iOS自动打包-sh的使用:下载压缩包后,解压,里面有后缀为.sh的文件和.plist的文件,将这两个文件放到.xcodeproj所在的文件夹下,然后ProjectName和SchemeName,打开terminal,运行这个.sh文件即可。 然后来说一下调试中遇到的问题: 文件路径的问题 Scheme的问题,我不知道自己的sheme是什么?或者我的sheme明明就是这个但是提示我找不到 脚本运行完,发现所有的文件都变成Modified状态,整个人顿时就不好了。。。 问题一:路径的问题因为是shell脚本,偶会的本...
2023-11-22
集成腾讯短视频SDK记录
集成腾讯短视频SDK记录有需求是录制一段视频并上传,服务端可见。最后才用集成腾讯SDK的方式,走了一些弯路,这里记录一下。 SDK 选择首先是SDK选择,对于iOS来说是腾讯的短视频SDK SDK集成然后是,SDK集成,按照上面链接步骤,把TXLiteAVSDK_UGC.framework和依赖的系统库集成到项目中,然后添加plist权限,再添加UGCKit模块,发现编译失败。对于我的项目来说,是因为 WCDB 库冲突,项目中使用的私有库封装了 WCDB,使用的是静态库的方式。和上面 SDK中冲突了,所以需要单独设置。修改了好久,编译通过之后,运行后发现,WCDB 初始化失败,又排查了好久,最终解决方法是: 在 Build Settings 中的 Other Linker Flags,设置: 12-force_load"${PODS_CONFIGURATION_BUILD_DIR}/WCDBOptimizedSQLCipher/libWCDBOptimizedSQLCipher.a" 如下: 然后是,发现按照上面步骤集成后,安装包大...
2016-12-29
iOS开发之坑1
iOS开发之坑1iOS 10 之后,switch的setOn方法调用之后,并没有按照文档上说的不发送action https://stackoverflow.com/questions/39566361/uiswitch-seton-animated-does-not-work-as-document 遇到个诡异的问题,同样的创建view,然而在偶数列显示模糊,在奇数列正常
公告
This is my Blog