技术

9 篇文章
技术
另辟蹊径的虚拟定位方法

另辟蹊径的虚拟定位方法

作者发现Fake Location的Root模式需付费后,找到了新模块HideMockLocation,该模块通过拦截系统返回的模拟位置检测值为False,使开发者选项的模拟位置API不被目标应用检测。针对Android 6.0及以上版本的不同检测方法,作者实测该模块在Android 15上对微信、QQ、京东等应用均成功实现虚拟定位。使用需前置Root权限及Xposed环境(如LSPosed),安装后配置系统框架与目标应用即可。

C# 反射 浅入浅出

C# 反射 浅入浅出

作者介绍了C#的反射(Reflection),这是一种运行时动态检查和操作类型、成员及属性的API,位于System.Reflection命名空间。反射支持动态对象创建、方法调用、属性访问和特性读取,广泛应用于插件开发、依赖注入、ORM框架和元编程工具。关键API包括Type用于类型信息,GetMethod和GetProperty用于获取方法和属性,以及GetCustomAttributes用于处理自定义特性。作者强调,直接调用方法可能影响性能,建议使用委托或表达式树优化。反射增强了程序的灵活性和可扩展性,但需谨慎使用以避免性能瓶颈。

浅谈电子邮件伪造

浅谈电子邮件伪造

作者探讨了电子邮件发信人伪造的技术原理与实现方法。文章指出,SMTP协议允许发信方任意声明发件人地址,这是伪造邮件的基础。为防范此类攻击,业界建立了SPF、DKIM和DMARC等认证机制,其中SPF记录通过域名白名单验证发件服务器IP。作者使用swaks工具进行测试,发现直接伪造有SPF记录的域名会被拒收,但通过代发机制可绕过验证,尽管邮件会显示"由xxx代发"。测试还揭示国内邮箱服务存在缺陷:QQ邮箱对无SPF记录的域名和子域名验证不严,网易邮箱甚至不校验SPF记录,仅显示伪造提示。作者建议使用Gmail或Proton Mail等更安全的邮箱服务。

OOP 设计模式之七大原则

OOP 设计模式之七大原则

作者系统阐述了面向对象编程的七大原则,包括SOLID(单一职责、开闭、里氏替换、接口隔离、依赖倒置)、组合/聚合复用和迪米特法则。这些原则强调职责分离、扩展性、接口设计、依赖抽象和最小化耦合,旨在提升代码的可维护性、可测试性和灵活性。作者通过C#示例展示了违反原则的常见错误,并指出正确实现应依赖接口、采用组合复用和限制对象交互范围。同时,作者提醒开发者需根据项目规模灵活应用原则,避免过度抽象导致代码冗余,确保设计平衡实用性与规范性。

C# 之委托与事件

C# 之委托与事件

作者在文章中详细阐述了委托和事件的概念及其在编程中的应用。委托是一种类型安全的函数指针,封装方法引用,支持动态调用、回调机制和多路广播,确保编译时类型安全。事件基于委托实现发布/订阅模式,解耦发布者和订阅者,通过+=/-=运算符管理订阅。内置委托类型如Action、Func和Predicate简化开发,示例场景包括文件下载进度、按钮点击事件、自定义排序策略和定时任务调度。与其他语言对比,Python需手动维护回调列表,Java依赖接口和监听器,而C#的委托和事件提供更简洁高效的实现。

C# 语法糖与特性介绍

C# 语法糖与特性介绍

作者在文章中系统介绍了C#编程语言的核心特性,涵盖从C# 3.0到C# 11.0的关键功能,包括隐式类型推断、目标类型、对象初始化器、匿名类型等,这些特性通过简化变量声明和初始化提升代码可读性。文章详细探讨了索引与范围、本地函数、Lambda表达式(涉及委托结合、LINQ用法及表达式树),以及字符串处理如插值和逐字字符串。扩展方法允许在不修改原类型的情况下添加功能,而模式匹配提供了强大的类型检查和值匹配能力,涵盖基础、过滤组合及结构化模式。异步编程利用async/await实现同步风格的异步操作,ref/out/in关键字支持不同参数传递方式,params关键字则简化可变数量参数处理。作者通过代码示例展示了这些特性的实际应用,旨在帮助开发者高效编写C#代码。

C# 语法糖之 LINQ

C# 语法糖之 LINQ

作者阐述了LINQ(Language-Integrated Query),一种将查询功能直接集成到C#语言的技术,使查询成为一流语言构造,支持类型检查和IntelliSense,统一了不同数据源的查询方式。基本语法包括查询表达式和方法链,作者偏好后者。执行机制分为延迟执行(在枚举时执行)和即时执行(如聚合操作)。操作符涵盖过滤、投影、排序、分组、聚合等分类。提供程序如LINQ to Entities实现IQueryProvider接口,负责表达式树翻译到目标数据源。性能优化建议包括缓存结果、合理分批加载、最小化投影字段、表达式复用和谨慎使用PLINQ。

导出QQ所有超级表情包(共144张)

导出QQ所有超级表情包(共144张)

作者发现QQ超级表情为Lottie动画格式,但腾讯未全部公开,需通过特定路径查找。初始在全局文件夹未果,最终在账号目录的D:\Tencent Files\QQ\账号\nt_qq\nt_data\Emoji\BaseEmojiSyastems\EmojiSystermResource\qlottie中定位到目标表情包。借助工具批量导出为.gif,提供下载链接及源文件,说明导出质量为70%、速度3.2x,需更高画质可自行使用工具处理。

[开源] 服务器智能风扇调速工具

[开源] 服务器智能风扇调速工具

作者开发的 FanX 是一款基于 .NET 8 和 Blazor 的服务器风扇控制与监控平台,专为戴尔服务器设计(支持 BMC 设备也可使用)。该平台通过实时监控设备运行状态,并根据自定义或智能规则动态调节风扇转速,在确保系统温度和功率安全的同时有效降低噪音。核心功能包括实时监控功率、风扇转速、CPU温度及主板温度,支持多级温度-转速映射曲线的智能控制,提供企业微信机器人、Webhook等多种通知渠道。作者还设计了灵活的规则配置系统,允许基于不同温度条件为特定风扇设置精确转速,相比服务器自带自动调速更为精细。项目支持 Docker 部署,提供中英文界面和深色/浅色主题切换,满足不同用户需求。

C# Lottie 动画控件库

C# Lottie 动画控件库

作者开发了一个支持WPF和Avalonia的.NET平台Lottie动画库并已开源。该库基于SkiaSharp实现,旨在解决.NET桌面应用中Lottie动画支持有限的问题。提供完整的Lottie JSON格式支持,包含播放控制、逐帧操作、PNG导出、外部控制模式等核心功能,并支持多种文件格式。通过硬件加速渲染、自动内存管理和可配置帧率实现性能优化。库适合Loading动画、UI交互反馈、数据可视化等场景,为.NET开发者提供了功能完善的Lottie动画解决方案。