关于安卓逆向的学习思考

SQLSERVER 语句交错引发的死锁研究

一:背景 1. 讲故事 相信大家在使用 SQLSERVER 的过程中经常会遇到 阻塞 和 死锁,尤其是 死锁,比如下面的输出: (1 row affected) Msg 1205, Level 13, State 51, Line 5 Transaction (Process ID 62) was ......
语句 SQLSERVER

计网学习笔记一 Networking && Internet

参考书籍: James F. Kurose, Keith W. Ross. 计算机网络—自顶向下方法 (7th). 机械工业出版社,2018. William Stallings. 数据与计算机 通信 (8th). 电子工业出版社 **课程网站地址:**https://cs.nju.edu.cn/l ......
Networking amp Internet 笔记

实现简单的`Blazor`低代码

本篇博客只实现基本的低代码,比如新增组件,动态修改组件参数 创建项目 首先创建一个空的Blazor Server,并且命名LowCode.Web 实现我们还需要引用一个Blazor组件库,由于作者用Masa Blazor比较多所以使用Masa Blazor 安装Masa Blazor 将Masa B ......
代码 Blazor

flutter系列之:Navigator的高级用法

简介 上篇文章我们讲到了flutter中navigator的基本用法,我们可以使用它的push和pop方法来进行Router之间的跳转。 在flutter中一个Router就是一个widget,但是在Android中,一个Router就是Activity,在IOS中,一个Router是一个ViewC ......
Navigator flutter

Python核对遥感影像批量下载情况的方法

本文介绍批量下载遥感影像时,利用Python实现已下载影像文件的核对,并自动生成未下载影像的下载链接列表的方法~ ......
遥感 影像 情况 方法 Python

Python批量绘制遥感影像数据的直方图

本文介绍基于Python中gdal模块,实现对大量栅格图像批量绘制直方图的方法。 首先,明确一下本文需要实现的需求:现需对多幅栅格数据文件进行依据其像元数值的直方图绘制,具体绘制内容即各栅格图像像素数值的分布情况;所有栅格数据都保存在同一目标路径下,且均为.tif格式;而目标路径下具有其它非.tif ......
直方图 遥感 影像 数据 Python

「Python实用秘技13」Python中临时文件的妙用

本文完整示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/PythonPracticalSkills 这是我的系列文章**「Python实用秘技」**的第13期,本系列立足于笔者日常工作中使用Python积累的心得体会,每一期为大家带来一个几分钟内就 ......
Python 秘技 妙用 文件

随机森林RF模型超参数的优化:Python实现

本文介绍基于Python的随机森林(Random Forest,RF)回归代码,以及模型超参数(包括决策树个数与最大深度、最小分离样本数、最小叶子节点样本数、最大分离特征数等)自动优化的代码~ ......
模型 森林 参数 Python

多变量两两相互关系联合分布图的Python绘制

本文介绍基于Python中seaborn模块,实现联合分布图绘制的方法。 联合分布(Joint Distribution)图是一种查看两个或两个以上变量之间两两相互关系的可视化图,在数据分析操作中经常需要用到。一幅好看的联合分布图可以使得我们的数据分析更加具有可视性,让大家眼前一亮。 那么,本文就将 ......
分布图 变量 Python

Python自动合并Word文件同时添加分页符的方法

本文介绍基于Python,实现对多个Word文档加以自动合并,并在每次合并时按要求增添一个分页符的方法。 现有多个Word文档文件,需将其按名称顺序合并为一个新的Word文件,且需保证每一次合并时,都另起一页(即新的Word文件一页中,不能出现两个及以上的原本单个Word文件的内容)。 一般的,实现 ......
同时 文件 方法 Python Word

Python实现随机森林RF并对比自变量的重要性

本文介绍在Python环境中,实现随机森林(Random Forest,RF)回归与各自变量重要性分析与排序的过程。 其中,关于基于MATLAB实现同样过程的代码与实战,大家可以点击查看MATLAB实现随机森林(RF)回归与自变量影响程度分析这篇文章。 本文分为两部分,第一部分为代码的分段讲解,第二 ......
自变量 重要性 森林 Python

Python实现类别变量的独热编码(One-hot Encoding)

本文介绍基于Python下OneHotEncoder与pd.get_dummies两种方法,实现机器学习中最优的编码方法——独热编码的方法~ ......
变量 Encoding 编码 类别 One-hot

安卓ro.serialno产生的整个流程

前言: 关于ro.serialno这个属性,相信大家都不陌生了,应用层的Build.getSerial(),Build.SERIAL等均是直接或间接的获取了这个属性值。接下来从boot到系统应用,小小的分析一下它的整个流程: 由于是APP经常使用,那我们从应用层分析到底层kernel/boot 一, ......
serialno 流程 ro

修改安卓ID为硬件唯一ID

前言: 最近接到个需求,我们新产品上的外包侧APP需要使用硬件唯一ID(不管怎么升级怎么操作,ID始终不变和硬件绑定),用来做权限校验。 由于了解到安卓ID或序列号都会在擦除升级后重新随机生成,所以这里使用硬件上的ID来作为唯一ID,接下来进入正题 此篇以安卓7.1系统为例 一,常用硬件信息ID 这 ......
硬件

《关于我因为flink成为spark源码贡献者这件小事》

各位读者老爷请放下手上的板砖,我可真没有标题党,且容老弟慢慢道来。 spark和flink本身相信我不用做过多的介绍,后端同学不管搞没搞过大数据,应该都多多少少听过。 如果没听过,简单说,spark和flink之于大数据,就好比vue和react之于前端,就好比spring家族之于java。 从20 ......
贡献者 源码 小事 贡献 flink

IoT 边缘集群基于 Kubernetes Events 的告警通知实现

背景 边缘集群(基于 树莓派 + K3S) 需要实现基本的告警功能。 边缘集群限制 CPU/内存/存储 资源紧张,无法支撑至少需要 2GB 以上内存和大量存储的基于 Prometheus 的完整监控体系方案(即使是基于 Prometheus Agent, 也无法支撑) (需要避免额外的存储和计算资源 ......
集群 Kubernetes 边缘 Events IoT

大规模 IoT 边缘容器集群管理的几种架构-3-Portainer

前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s 大规模 IoT 边缘容器集群管理的几种架构-2-HashiCorp 解决方案 Nomad 大规模 IoT 边缘容器集群管理的几种架构-3-Portai ......
集群 容器 架构 Portainer 大规模

大规模 IoT 边缘容器集群管理的几种架构-4-Kubeedge

前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s 大规模 IoT 边缘容器集群管理的几种架构-2-HashiCorp 解决方案 Nomad 大规模 IoT 边缘容器集群管理的几种架构-3-Portai ......
集群 容器 架构 大规模 Kubeedge

IoT 边缘集群基于 Kubernetes Events 的告警通知实现(二):进一步配置

上一篇文章 IoT 边缘集群基于 Kubernetes Events 的告警通知实现 目标 告警恢复通知 - 经过评估无法实现 原因: 告警和恢复是单独完全不相关的事件, 告警是 Warning 级别, 恢复是 Normal 级别, 要开启恢复, 就会导致所有 Normal Events 都会被发送 ......
集群 Kubernetes 边缘 Events IoT

大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介

📚️Reference: IoT 边缘计算系列文章 什么是边缘容器? 边缘容器的概念 边缘容器是分散的计算资源,尽可能靠近最终用户或设备,以减少延迟、节省带宽并增强整体数字体验。 可以访问互联网的设备数量每天都在增加。有包括但不限于: 智能电视 智能家居 智能手机 智能汽车 物联网 IoT 创造的 ......
容器 架构 边缘 集群 大规模

大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s

前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 📚️Reference: IoT 边缘计算系列文章 Rancher + K3s 简介 Rancher: Kubernetes 统一管理平台, Rancher 是为采用容器的团队提供的一个完整的软件栈。它解决了管理多个 K ......
集群 容器 架构 大规模 边缘

大规模 IoT 边缘容器集群管理的几种架构-2-HashiCorp 解决方案 Nomad

前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s 📚️Reference: IoT 边缘计算系列文章 HashiCorp 解决方案 - Nomad + Docker 简介 Nomad: 一个简单而灵 ......
集群 容器 架构 HashiCorp 大规模

Vue学习:实现用户没有登陆时,访问后自动跳转登录页面

设计思路 定义路由的时候配置属性,这里使用needLogin标记访问页面是否需要登录 设置路由守卫,每个页面在跳转之前都要经过验证,校验用户信息是否存在,不存在跳转到登录页 用户登录后将用户信息存储在localStorage 退出登录后,将用户信息清空 代码实现 1、router文件夹的index. ......
页面 用户 Vue

SpringCloud 源码学习笔记2——Feign声明式http客户端源码分析

系列文章目录和关于我 一丶Feign是什么 Feign是一种声明式、 模板化的HTTP客户端。在Spring Cloud中使用Feign,可以做到使用HTTP请求访问远程服务,就像调用本地方法一一样的, 开发者完全感知不到这是在调用远程方法,更感知不到在访问HTTP请求。接下来介绍一下Feign的特 ......
源码 SpringCloud 客户端 客户 笔记

C# Replace:一个熟悉而又陌生的替换

前言 Replace 的作用就是,通过指定内容的替换,返回一个新字符串。 返回值中,已将当前字符串中的指定 Unicode 字符或 String 的 所有匹配项,替换为指定的新的 Unicode 字符或 String。 一、String.Replace() 的几个重载 String.Replace( ......
Replace

任何人均可上手的数据库与API搭建平台

编写API可能对于很多后端开发人员来说,并不是什么难事儿,但如果您主要从事前端功能,那么可能还是有一些门槛。 那么有没有工具可以帮助我们降低编写API的学习门槛和复杂度呢? 今天就来给大家推荐一个不错的开源工具:APITable APITable是一个面向API的可视化数据库,它适用于所有人,甚至没 ......
数据库 数据 平台 API

集合类再探:不可变类的好处,Collector接口详解,使用内部迭代

集合类再探 注:本文使用的pom依赖见文末。 💡 集合类的基础 — Iterable、Iterator java语言层面支持对实现了Iterable接口的对象使用for-each语句。Iterator可以实现有限流和无限流。 Collection类定义了基本的增删改查操作,转向基本数组类型(toA ......
Collector 好处 接口

文件格式引起的脚本执行错误

问题 当我们使用 Windows 桌面下的编辑器编写一个 Shell 文件时,很容易将文件使用的换行符保存为 dos 格式。如果将文件上传到 Linux 服务器执行时,可能会遇到下面的错误。这是因为 # 显示一个简单的shell文件 $ cat dosnewline.sh #!/bin/sh ech ......
脚本 错误 格式 文件

一个诡异的 Pulsar InterruptedException 异常

背景 今天收到业务团队反馈线上有个应用往 Pulsar 中发送消息失败了,经过日志查看得知是发送消息时候抛出了 java.lang.InterruptedException 异常。 和业务沟通后得知是在一个 gRPC 接口中触发的消息发送,大约持续了半个小时的异常后便恢复正常了,这是整个问题的背景。 ......
InterruptedException Pulsar

MQ收到无序的消息时如何进行业务处理

业务背景 跟第三方系统做对接,双方通过ActiveMQ进行通信,消息之间是有内在关联的,也就是消息本来应该是有业务顺序的,但由于一些原因,现在收到消息是乱序的,这种情况下做业务处理就有一点小问题了 方案一:自己重排序 收到消息后,自己在内存排序,然后按顺序丢到队列中,自己控制消息的发送和接收保证收到 ......
消息 业务