写代码容易,读代码难。功能是都实现了,但是对维护人员来说,简直就是灾难。背景Flutter 注重组合而非继承,要想搭建出 UI,需要组合不同功能的 Widget,如布局 Widget、响应 Widget、控件 Widget 等才能搭建出一个功能完善的 UI 界面,这便导致了嵌套地狱: 在顶级 Widget 的构造器中内嵌众多 Widget。像下面这个例子,其实都不是最多层的,只要你卖力,可以超乎想象的)))))))))))))))))).....class FrostedGlass extends StatelessWidget { @override Widget build(...
给K3改造好散热之后,打算把系统从官改系统升级成梅林系统。主要是因为在改造散热的过程,我发现这台K3的闪存是mxic闪存,而并非是常见的三星闪存。因为三星闪存对梅林的兼容性不好,容易导致坏块的产生。开始刷机如果固件版本很老,像我这台的固件版本 V21.6.12.66,那就可以直接刷了。如果固件版本很新,并且不能使用漏洞降级,那你可能要拆机,然后用TTL刷机了。首先是激活Telnet,使用这个工具。原理就是利用web注入的方式。重点来了,第一步备份路由器固件,防止刷机失败了,可以恢复原本的固件。telnet 192.168.2.1 mount # 查看当前挂载的 U 盘 cd /tmp...
第一次见到NSCache,是在SDWebImage中。SDWebImage的内存缓存机制就是通过NSCache完成的。所以可能你不太了解这个类,但是其实一直在使用它。为什么要使用NSCache?我们通常用缓存来临时存储短时间使用但创建昂贵的对象。重用这些对象可以优化性能,因为它们的值不需要重新计算。另外一方面,这些对象对于程序来说不是紧要的,在内存紧张时会被丢弃。如果对象被丢弃了,则下次使用时需要重新计算。NSCache是一个可变的集合,主要用来存储key-value对。它有着和NSMutableDictionary类似的API。实际上,NSCache就像是一个会自动移除对象来释放内存的...
必备工具一台已经越狱的iPhone一台PC方案一打开Cydia,搜索OpenSSH,安装。保证PC和iPhone在同一局域网下,然后连接SSH。默认的账户是root,密码是alpine。地址是设备的局域网地址。$ ssh [email protected]方案二打开Cydia,卸载掉OpenSSH(如果安装了),然后添加源:http://cydia.ichitaso.com/test。(如果iPhone重启了,打开Cydia闪退,记得先Re-Jailbreak)在Cydia中搜索dropbear,安装。然后重复方案一的2.,直接SSH连接即可。遇到的问题如果wifi连接iPhone设备...
天气越来越热,路由器温度也越来越高,由于K3的劣质硅脂垫在高温下容易出油,加上在硬件设计中,无线模块放在主板下方,硅脂垫流出的油会滴到无线模块上,然后导致无线模块丢失,最常见的表现就是2.4G信号或者5G信号丢失。购买配件本身K3硬件设计就是没有风扇的被动散热,所以我预想的改动也就是增强被动散热。如果加风扇,散热效果会更加明显,但是风扇耗电,可能会导致主机电源不稳定,从而造成网速波动。这套配件主要包含铜片,硅脂垫,硅脂。拆机由于是卡扣式的安装,拆机只能用巧劲来拆,实际上花了半个多小时才拆开,然后卡扣还断了一根,算及格吧。我这台K3是刚从某转上淘来的。是全新的,但是由于气温高,可以看一下,...