面试题总结(From J_Knight)

前一段时间看了J_Knight2017年5月iOS找人心得(附面试题)。作为一个在编程前线奋斗了将近两年的iOS从业人员,面对这些题目时,有些竟感觉生疏,甚至答不上来,很是惭愧。个人感觉,像runtime、线程、信号量相关的偏底层知识虽然平时基本用不到。特别是很多人可能都没参与过稍复杂项目的开发,优化,这些内容对于很多新手iOS开发来说只存在于理论。但并不是说这些知识不重要,相反,它是我们进阶的必经之路。此篇文章的目的一方面自己整理,一方面希望和大家共同学习进步。以下内容多数为整理,时间仓促可能有不准确的地方,如果缺漏,欢迎指正。

部分答案出处:iOSInterviewQuestions

iOS蓝牙知识快速入门(详尽版)

iOS-bluetooth
以前写过几篇蓝牙相关的文章,但是没有涉及扫描、收发指令这些基础功能的实现。所以打算写一篇尽可能详尽的蓝牙知识汇总,一方面给有需要的同学看,一方面是对自己学习蓝牙的一个总结。

这篇文章的目的:教你实现设备的扫描,连接,数据收发,蓝牙数据解析。如果在实现上面任一功能遇到问题时,欢迎留下你的问题,我将进行补充,对于说法有误的地方也请老司机予以指正。

为博客设一个自定义域名

现在越来越多的人悬着使用githubpage搭建自己的个人博客,但是github提供的默认的域名是这种形式:username.github.io,是个二级域名,这对于很多人来说可能感觉不是很酷。那么我们今天就来做一件比较酷的事情,为站点自定义一个域名。

nRF芯片设备DFU升级(适配Xcode10.2.1)

Nordic.png

这里主要参考这个项目:iOS-nRF-Toolbox,它是Nordic公司开发的测试工程,包含一整套nRF设备的测试解决方案。

基于Hexo搭建自己的博客小屋

作为一名技术人员没有属于自己的博客,就像是喜欢LOL的玩家却没有一款炫酷的皮肤一样,这不叫真爱。虽然现在是微博的时代,讲究方便阅读,易传播,但是对于博客来说,特别是技术博客,专业性永远都是第一位的。我们需要用大大的篇幅去阐述自己对技术的理解并将其分享给其他人,所以无论社交软件如何发展,我们都需要博客。下面就跟着我一块搭建属于自己的博客小屋吧。

iOS蓝牙中的进制转换

Bluetooth4.0.jpg
最近在忙一个蓝牙项目,在处理蓝牙数据的时候,经常遇到进制之间的转换,蓝牙处理的是16进制(NSData),而我们习惯的计数方式是10进制,为了节省空间,蓝牙也会把16进制(NSData)拆成2进制记录。这里我们研究下如何在他们之间进行转换。

iOS获取来电和短信发送状态

获取电话状态

在我想要了解iOS获取来电状态时,经常被这是不是允许的,是不是要调用私有库等问题困扰。费了好大劲终于解决了上面问题,你可以获取系统提供的电话相关状态,而且它不属于私有库。为了需要这方面资料的人查阅时少走弯路,我把这些东西写下来,废话少说,上代码。

处理ANCS设备连接绑定问题

ANCS.jpg

ANCS(Apple Notification Center Service,苹果通知中心)的目的是提供给蓝牙外设一种简单、方便的获取iOS设备通知信息的方式。使得蓝牙手环,手表可以接收到来自iPhone的来电、短信及QQ、微信等应用的通知消息。

iOS10本地通知UserNotifications快速入门

notification.png

iOS10更新变动最大的就是通知这部分了,新版通知变得更加统一,使用更加方便,设计更加自由。以前本地通知和远程推送是分开的,虽然这些到了iOS10都合在一起了,但是为了便于理解,我们还是把他俩分开来进行学习。这节我们学习的是本地通知。

iOS中实现JS和OC的交互(Hybrid App)

Hybrid.png

在项目开发中,我们常常遇到这种情况,一个功能性界面需要分享到其他平台,或者是一个较复杂,原生框架不易实现,需要经常变动的界面,处理这种功能,最优的处理办法就是交给H5来完成了。像这种介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”的应用就被成为Hybrid App

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×