啤酒赏析二——迷失海岸西瓜小麦啤酒
泡沫绵密且足,很长时间都没有消散。闻起来是清新的西瓜味。一口喝到嘴里能够尝到浓郁的西瓜味,原来以为是加了香精,看了一下配料表貌似加的是西瓜汁。前调是西瓜的甜味,中后调是麦芽的香味,后调还能带着一点淡淡的水果香。整体给人很惊艳的感觉,国内的果啤喝多了,没想到鬼佬的果啤反倒给了我很大的惊喜,好评,下次可以囤一点聚会喝,度数不高,适合跟妹子一起畅饮,淘宝价格 86元/6瓶
啤酒赏析一
记录一下生活当中喝到的各样式啤酒,省得下一次再踩坑。近年来精酿啤酒井喷,想当初只有个福佳白能算上精酿,现在各种国产品牌都冒出来了,福佳白也成了水啤,想想生活真是在高速发展呢。 这一款啤酒是在小象超市上购买的,名叫雪松未过滤啤酒,当时特价 12.26/1.35L,酒体颜色浑浊,泡沫丰富,闻起来没有特别明显的味道,入口一股工业啤酒的臭味,随后麦芽的味道缓缓跟上,咽下之后麦芽香气消失很快,嘴里也留不下多少回味,整体酒精度低,适合当水啤喝。 同样是小象超市上的,看样子像贴牌货,看一看配料表,水,大麦芽,小麦芽,香精,嗯,看起来就是加了香精的水啤,泡沫多但是散的快,闻起来一股奶油和黄油的混合味。喝一口前味全是黄油味,大概两到三秒黄油味会变为淡淡的甜味,随后就是很轻微的酒味,后味只有腻得慌的甜味。整体就是个小甜水,喝了两口直接倒了。 淘宝上又拼单了云石的苦啤,过两天做个评测
跨平台短信同步可视化解决方案
多手机同步短信 背景 手上持有多张电话卡,包括大学注册的电话卡、工作之后办的工作卡、宽带送的亲情号、还有专门对付快递的小号,满打满算已经 4 张卡了。虽然双持手机,每个手机插两张卡,但是实际使用的时候,不同账号登录使用不同的手机号,依然需要在两个手机上来回查看验证码,非常的不优雅,于是考虑通过短信转发的方式将多个手机号的短信都统一转发至一个手机号上,在实现这个方案的路上遇到了两个问题: 有两张卡是保号卡,顾名思义,除了 8 元套餐送的流量以外没有免费的短信额度,转发成本太高 可爱的运营商有短信拦截,涉及敏感信息的短信无法转发 一开始采用的方法是卡号互相搭配,一张有免费短信的卡+一张保号套餐,通过短信 base64 编码之后进行转发,可以完美解决上述两个问题,同时带来了另一个问题:接受到的 base64 编码的短信如果需要再次查看,需要手动解码,而且短信内容一多之后完全不知道每条短信是谁发送的,如果遇到多个号码同时转发的情况,需要逐条排查。 考虑到未来的使用成本和可靠性,最终决定采用 XOR 加密 + 云端服务器的方式实现短信加密和短信转发,具体工作流程如下: 准备工作 短信发送侧:安卓手机+tasker 短信接受侧:苹果手机+scriptable 云服务器:阿里云(也可以使用 cloudflare 的无状态服务直接白嫖) 点击对应软件可以跳转至官方网站 执行步骤 设置配置,当接受到短信时执行任务 创建任务 配置全局环境变量 其中 token 用于存储生成的密钥,xortext 用于存储 xor 加密后的短信内容 编写 tasker 代码 // 步骤1:从Tasker全局变量获取加密token var token = global('TOKEN'); if (!token) { flash("错误:未找到token全局变量(变量名:token,当前值:" + token + ")"); exit(); } // 步骤2:获取短信内容(Tasker 中使用 %SMSRB 获取短信内容) var smsContent = global('SMSRB'); if (!smsContent) { flash("错误:未获取短信内容"); exit(); } // XOR加密函数(兼容Unicode) function xorEncrypt(text, key) { var result = []; var keyIndex = 0; // 将字符串转为UTF-8字节数组 var encoder = new TextEncoder(); var data = encoder.encode(text); var keyData = encoder.encode(key); // 执行XOR加密 for (var i = 0; i < data.length; i++) { var encryptedByte = data[i] ^ keyData[keyIndex]; result.push(encryptedByte); keyIndex = (keyIndex + 1) % keyData.length; } // 将字节数组转为16进制字符串 var hexString = ''; for (var j = 0; j < result.length; j++) { var hex = result[j].toString(16); // 确保每个字节是两位的十六进制表示 hexString += (hex.length === 1 ? '0' + hex : hex); } return hexString; } try { // 执行加密和编码 var encryptedData = xorEncrypt(smsContent, token); // 将加密后的数据保存至 XORTEXT 全局变量中 setGlobal("XORTEXT", encryptedData) // 测试加密结果 flash("加密结果" + encryptedData) } catch (e) { flash("发生异常:" + e.message); exit(); } 完成安卓侧的短信发送以后,现在开始编写 IOS 侧的小组件用于获取短信内容 ...
制作永生花
背景 今天是情人节,准备给对象做一个情人节礼物。想到她最喜欢《间谍过家家》这部动漫,计划给她做一个可观赏的永生花摆件。在摆件中,永生花指的是经过特殊处理后能够长期保持鲜艳和形状的花朵,保留了鲜花的自然色彩和形状,视觉效果逼真。与鲜花不同,永生花无需日常维护,适合长时间摆放。 物料清单 所有物料采购自万能的淘宝 这里解释一下不同的物料有什么作用: 永生花,这就不解释了,一般提供的花料有几种,通常会包含一至两朵的主花(完整的玫瑰或者其他花),辅料(树叶、小草、特色装饰品) 胶水及胶棒,考虑到需要粘贴小草和花泥,需要购买胶水和胶棒进行辅助粘贴。胶棒的主要成分通常是热塑性树脂,需要配合胶枪加热使用,胶水通常是液态或半固态,需要自然晾干。胶棒的优势在于加热后可以立即凝固,节省时间。 花泥,我的理解花泥就是一个泡沫塑料,可以用刀修剪成各种形状。这里需要注意的是,干花泥本身使用非常细小的塑料颗粒制成,切割的过程中会产生粉尘,一定一定要在通风的地方进行切割和使用,并且佩戴防尘口罩,谨防吸入细小颗粒 底座,用来摆放摆件和花泥,要注意底座分为球形和筒型两种,球形的特点是口小容量大,直筒型的特点是整体是垂直的,两者最大的区别就在于盖上的时候,球形可以用手拢住花材,盖上盖子后花材可以自然展开。而筒形不行,盖上后花材可能因为空间限制无法展开,如果不太确定两者的区别,可以上淘宝看一下。 阿尼亚的手办,选用的是泡泡玛特家的阿尼亚,这里有个省钱小技巧,可以直接到淘宝买指定款,比硬抽便宜,非热门款式还能打折,适合脸黑的非酋。 开始制作 物料到齐之后开始进行制作,这里上一张全材料图 第一步是需要确定花泥的大小,同时确定摆件的位置,我采用的方案是用两块花泥把摆件垫高,方便鲜花从侧面插入,因此需要确定花泥的大小和摆件相对于花泥的位置。 使用小刀在花泥中挖一个孔用于固定摆件,这里直接利用摆件自带的底座进行固定,后期直接在底座下方粘贴胶棒即可进行固定。 固定完成后放到底座上测量一下高度是否太高,要考虑玻璃盖的高度,防止玻璃罩无法合上。 完成测量之后使用胶棒开始固定花泥和底座 底座固定完成后使用胶枪继续在底座上粘贴小草装饰 粘贴到一半发现小熊掉下来了,也给小熊粘一点胶 增加其他装饰,同时把多余的小草都粘到花泥上 过程就不赘述了,直接上成品 总结 总体而言,永生花摆件的制作还是比较容易的,需要考虑的地方集中在底座大小和玻璃盖的选型上,可以看到我在阿尼亚手办后面增加了两个绿叶装饰,却因为高度问题被压变形了,球形摆件尤其要注意高度问题。 当然,女朋友对这个情人节礼物表示高度满意,也给其他男同胞们在情人节礼品上提供一个方向,实在不知道送什么就亲手做一个摆件吧。