题外话
我们见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了7、8年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。
其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。
不断奔跑,你就知道学习的意义所在!
注意:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
核心规范是蓝牙协议家族的基础,自蓝牙技术联盟(Bluetooth SIG,Special Interest Group)在1999年颁布蓝牙核心规范1.0版本以来,到目前为止蓝牙SIG一共发布了七个重要版本。
版本 | 规范发布日期 | 增强功能 |
0.7 | 1998年10月19日 | Baseband、LMP |
0.8 | 1999年1月21日 | HCI、L2CAP、RFCOMM |
0.9 | 1999年4月30日 | OBEX与IrDA的互通性 |
1.0 Draft | 1999年7月5日 | SDP、TCS |
1.0 A | 1999年7月26日 | |
1.0 B | 2000年10月1日 | 安全性,厂商设备之间连接兼容性 |
1.1 | 2001年2月22日 | IEEE 802.15.1 |
1.2 | 2003年11月5日 | 快速连接、自适应跳频、错误检测和流程控制、同步能力 |
2.0 + EDR | 2004年11月9日 | EDR传输率提升至2-3Mbps |
2.1 + EDR | 2007年7月26日 | 扩展查询响应、简易安全配对、暂停与继续加密、Sniff省电 |
3.0 + HS | 2009年4月21日 | 交替射频技术、802.11协议适配层、电源管理、取消了UMB的应用 |
4.0 +BLE | 2010年6月30日 | 低功耗物理层和链路层、AES加密、Attribute Protocol(ATT)、Generic Attribute Profile(GATT)、Security Manager(SM) |
表中,
-
EDR:全称为Enhanced Data Rate。通过提高多任务处理和多种蓝牙设备同时运行的能力,EDR使得蓝牙设备的传输速度可达3Mbps。
-
HS:全称为High Speed。HS使得Bluetooth能利用WiFi作为传输方式进行数据传输,其支持的传输速度最高可达24Mbps。其核心是在802.11的基础上,通过集成802.11协议适配层,使得蓝牙协议栈可以根据任务和设备的不同,选择正确的射频。
-
BLE:全称为Bluetooth Low Energy。蓝牙规范4.0最重要的一个特性就是低功耗。BLE使得蓝牙设备可通过一粒纽扣电池供电以维持续工作数年之久。很明显,BLE使得蓝牙设备在钟表、远程控制、医疗保健及运动感应器等市场具有极光明的应用场景。
虽然蓝牙4.0规范3年就发布,但目前使用最广泛的蓝牙核心规范版本还是3.0。智能手机中只有Iphone 4S,Iphone5,三星GallaxyS3、S4、Note2等少数设备支持蓝牙4.0。不过,Google已经在发布的Android 4.3中添加了对4.0的支持。下表是经典蓝牙与低功耗蓝牙的一些区别:
技术规范 | 经典蓝牙(2.1 &3.0) | 低功耗蓝牙(4.0) |
无线电频率 | 2.4GHz | 2.4GHz |
距离 | 10米/100米 | 30米 |
数据速率 | 1-3Mbps | 1Mbps |
应用吞吐量 | 0.7-2.1Mbps | 0.2Mbps |
发送数据的总时间 | 100ms | <6ms |
耗电量 | 1 | 0.01至0.5 |
最大操作电流 | <30mA | <15mA(最高运行时为15 mA) |
主要用途 |
1.2蓝牙应用规范http://developer.bluetooth.org/TechnologyOverview/Pages/Profiles.aspx
蓝牙 SIG 根据不同的应用场景定义了不同的蓝牙应用规范,截止到现在,发布了 40 个蓝牙应用规范。
Advanced Audio Distribution Profile
Advanced Audio Distribution Profile 简称为 A2DP (高质量音频分发规范)定义了如何将立体声质量的音频通过流媒体的方式从媒体源传输到接收器上
Object Push Profile
OPP (对象推送规范)定义了推送服务器和客户端之间基于 Generic Object Exchange Profile ( GOEP ,通用对象交换规范)进行对象交换的规范
Hands-Free Profile
HFP ( HFP ,免提规范)定义了蓝牙音频网关设备如何通过蓝牙免提设备拨打和接听电话
Heart Rate Profile
HRP (心率规范)定位与和医疗 / 健康相关的应用场景中,它使得蓝牙设备能与心率传感器交互
…
…
…
…
Bluetooth4.0 on Android4.3
1. 什么是 Bluetooth4.0 ?
蓝牙 4.0 为蓝牙 3.0 的升级标准。
蓝牙 4.0 最重要的特性是省电,极低的运行和待机功耗可以使一粒纽扣电池连续工作数年之久。此外,低成本和跨厂商互操作性,3 毫秒低延迟、100 米以上超长距离、AES-128 加密等诸多特色,可以用于计步器、心律监视器、智能仪表、传感器物联网等众多领域,大大扩展蓝牙技术的应用范围。
主要特点
蓝牙 4.0 将三种规格集一体,包括传统蓝牙技术、高速技术和低耗能技术,与 3.0 版本相比最大的不同就是低功耗。4.0 版本的功耗较老版本降低了 90%,更省电。
蓝牙 4.0 是蓝牙 3.0+HS 规范的补充,专门面向对成本和功耗都有较高要求的无线方案,可广泛用于卫生保健、体育健身、家庭娱乐、安全保障等诸多领域。它支持两种部署方式:双模式和单模式。
双模式中,低功耗蓝牙功能集成在现有的经典蓝牙控制器中,或再在现有经典蓝牙技术
(2.1+EDR/3.0+HS)芯片上增加低功耗堆栈,整体架构基本不变,因此成本增加有限。
单模式面向高度集成、紧凑的设备,使用一个轻量级连接层(Link Layer)提供超低功耗的待机模式操作、简单设备恢复和可靠的点对多点数据传输,还能让联网传感器在蓝牙传输中安排好低功耗蓝牙流量的次序,同时还有高级节能和安全加密连接。
特性关键词
超低的峰值、平均和待机模式功耗
使用标准纽扣电池可运行一年乃至数年
低成本
不同厂商设备交互性
无线覆盖范围增强
完全向下兼容
低延迟(APT-X)
技术特征
速度:支持 1Mbps 数据传输率下的超短数据包,最少 8 个八组位,最多 27 个。所有连接都使用蓝牙 2.1加入的减速呼吸模式(sniff subrating)来达到超低工作循环。
跳频:使用所有蓝牙规范版本通用的自适应跳频,最大程度地减少和其他 2.4GHz ISM 频段无线技术的串扰。
主控制:更加智能,可以休眠更长时间,只在需要执行动作的时候才唤醒。
延迟:最短可在 3 毫秒内完成连接设置并开始传输数据。
范围:提高调制指数,最大范围可超过 100 米。
健壮性:所有数据包都使用 24-bitCRC 校验,确保最大程度抵御干扰。
安全:使用 AES-128 CCM 加密算法进行数据包加密和认证。
拓扑:每个数据包的每次接收都使用 32 位寻址,理论上可连接数十亿设备;针对一对一连接优化,并支
持星形拓扑的一对多连接;使用快速连接和断开,数据可以再网状拓扑内转移而无需维持复杂的网状网络
2. 哪些产品能兼容 Bluetooth4.0 ?
IC Implementations
Broadcom BCM20702 [21]
CSR CSR1000/CSR1001[22]
EM Microelectronic EM9301 [23]
Nordic nRF8001 [24]
Texas Instruments: CC2540/1[25]
Marvell Semiconductor : W8797 [26]
Apple’s CoreBluetooth framework, iOS 5[27] onwards
Software support
Linux’s Bluez protocol stack from 2011,[28] release 5.0[29] supports
numerous profiles
HTC One, One X+, Droid DNA[30]
Mobile devices
Apple’s iPhone 4S,[31] iPhone 5, iPad (3rd gen & 4th gen),[32] iPad
Mini[33] and others
Nokia Lumia 620, 820 and 920[34]
Samsung Galaxy SIII, Galaxy S4,[35] Note II [36]
Microsoft Surface Pro [37]
Blackberry Z10 [38] and Q10 [39]
Wahoo Fitness Blue SC cycle cadence/speed sensor[40]
Polar H7 Heart Rate Sensor[41]
Pebble E-Paper Watch [42]
MetaWatch watches [43]
Peripherals
COOKOO smart watch [44]
Lockitron Door Lock [45]
Shutterbug Remote Shutter Release [46]
Zephyr Technology HxM Smart Heart Rate Monitor [47]
RF Digital RFD51822 module[48] and others
Bluegiga BLED112 module[49] and others
Alpwise ALPW-BLEM001 modules[50]
Modules
Digi’s ConnectCard for i.MX28 System-on-Module[51]
Insight SiP ISP091201/ISP130301 series modules [52]
Panasonic PAN1720 series modules [53]
Blue Radio’s BR-LE4.0 modules[54]
3.Bluetooth Smart 和 Bluetooth Smart Ready
除了原先我们熟知的蓝色天线加上 Bluetooth 字样 Logo 外,现在还多了 Bluetooth Smart Ready 及Bluetooth Smart 两款;其主要用意,就是协助使用者快速识别行动装置上的蓝牙模组,是否采行最新的 4.0 版本。
根据蓝牙技术联盟(SIG)的报告中指出,凡是只要贴上 Bluetooth Smart Ready 标志的手机、平板电脑、笔记型电脑,甚至是电视机…等等,都是使用蓝牙 4.0 版本的「双模」无线标准。而另一个标志 Bluetooth Smart 则是用在低功耗的蓝牙 4.0 版本「单模」无线标准上,适用于使用钮扣式电池的装置,像是心跳监测器、器步器和收集特定资讯的感应器电子设备。
尾声
你不踏出去一步,永远不知道自己潜力有多大,千万别被这个社会套在我们身上的枷锁给捆住了,30岁我不怕,35岁我一样不怕,去做自己想做的事,为自己拼一把吧!不试试怎么知道你不行呢?
改变人生,没有什么捷径可言,这条路需要自己亲自去走一走,只有深入思考,不断反思总结,保持学习的热情,一步一步构建自己完整的知识体系,才是最终的制胜之道,也是程序员应该承担的使命。
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
见算法题汇总。)**
[外链图片转存中…(img-3RWZeFc1-1715804356652)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!