做测试我们是认真的,苦于手上的手机都已升级iOS 10,为了搞清楚问题,只好专门买了一个iOS 9.31版本的iPhone 5S手机来做实验。
问题现象:
我们发现一些高仿数据线在iOS 10上正常工作,但在iOS 9上不能很好地工作。
具体表现为:先插A公再插苹果头可以给手机正常充电,而如果不插A公,只插苹果头,过几秒钟手机提示不支持此配件,或者先插苹果头再插A公只有充电符号却没电流。
数据线问题分析:
以上为高仿方案典型原理图,拆解发现有问题的数据线里C1电容虚焊失效,在A公没有插电的情况下,MCU的供电其实是由与手机通信的DQ脚供过来的微弱电流,由C1保持供给MCU正常工作,如果C1失效,那MCU无法正常工作了。
那为什么在iOS 9和iOS 10表现会不一样?是因为iOS 10的认证过程有改进。
看以下分析:
iOS 9认证过程分析:
从上面分析可以看出,如果先插入A公,因为A公过来的电压可以保证MCU正常工作,不受C1失效影响,这时插入苹果头,则可以正常完成认证过程。如果先插入苹果头由于C1失效MCU无法工作则直接导至认证失败。
iOS 10认证过程分析:
从上面可以看出iOS 10变得更聪明,先插入苹果头认证失败的情况下,并不提示“不支持此配件”,而还是等到A公插电的情况下重新启动认证,而此时A公电压供给MCU已可以正常工作,完成认证并正常充电,表面已看不出有什么问题。
总结:
以上分析结果正好与开头的问题现象是一致的,说明iOS 10的兼容性更好,只要求A公插电的情况下能正常工作就行,不要求单端插入正常工作,iOS 9则要求单端插入也要正常才不会报错,所以在iOS 10上能正常使用的数据线在iOS 9上可能不好使。