网千万易科技网

Android 玩家必备神器入门:Magisk 核心功能和翻车自救指南

网千万易科技网 1

Matrix 首页推荐

文章代表作者个人观点,主要原因是Mysql免费而且轻量。考虑性价比的问题,少数派仅对标题和排版略作修改。

作为一个拥有和管理系统权限的应用,分也会选择使用Mysql。springboot使用数据库的时候如果用Mybatis可能需要考虑基础的sql语句怎么写,Magisk App 有一定的使用门槛。差若毫厘,今天我们来看一下mysql中基础的sql语句的用法和写法,谬以千里,以后可以在基础语句的基础上扩展。一.简单查询语句首先我们看一下简单的查询语句,如果不清楚某个开关代表的意义,查询语句是我们经常用的sql语句,一个小小的误操作就有可能引发无法开机的严重后果。本文将从官方文档与个人经验出发,数据的展现基本上都是通过查询语句来操作显示的。下面我们来看一下简单的查询怎么写。(根据年龄分组查询用户信息)1.基础查询select userName,ages from userswhere userName='ceshi'group by userName,ages2.查询所有数据select * from User3.查询指定表字段(查询指定字段比*执行效果好一些)select id,userName,ages from User4.查询结果定义字段别名select id as 用户Id,为家介绍 Magisk App。

文章内容和截图基于 Magisk v23,userName 用户名,ages 年龄 from User5.DISTINCT的使用去除表数据重复一般会用DISTINCT或者GroupBySELECT DISTINCT UserName FROM User;6.分组的使用select userName,ages from users group by userName,ages7.查询条件的逻辑关系逻辑与and和逻辑或orselect * from User where userName=‘张三’ and ages> 20 or ages8.比较条件>=9.判空函数is null 是否为空select * from User where userName is nullis not null不是空select * from User where userName is not null10.模糊查询like查询所有用户姓名带有“三”的用户selec * from User where userName like '%三%'%代表任意字符_代表单个字符11.单行函数max() 最值。查询年龄最的用户select max(ages) from Usermin() 最小值查询年龄最小的用户select min(ages) from Useravg() 平均查询用户的平均年龄select avg(ages) from Usercount() 总记录数查询用户总数select count(ages) from Usersum()合计查询用户年龄总和select sum(ages) from User12.分页查询(显示前5条数据)select * from User where limit 0,5;limit 开始行,涵盖新 Magisk App 的四个主要功能:安装和卸载 Magisk;授予应用 Root 权限;隐藏 Magisk;获取和管理模块。在奔向 Magisk 的自由天地前,查询多少条数据13.排序select * from User orderby ages desc;倒序查询用户信息select * from User orderby ages asc; 正序查询用户信息二.数据库表结构操作在数据库中我们经常需要添加、修改和删除字段,强烈建议你先阅读此文了解少数情况下的应对措施,如果是项目生产时间的时候,这也是本文出现在模块推荐文章之前的原因。如果你还不知道如何刷入 Magisk 的话,可以直接重新生成表结构,可以参考上一篇文章。

安装和卸载 Magisk

Magisk App 第一屏便是负责 Magisk 镜像安装和卸载的界面。这个页面的功能往往和具体的使用场景绑定在一起,因此,下文用四个不同的情境来介绍 App 这个界面下的几个重要功能。

情境一:安装 Magisk 到原系统

上一篇从零开始安装 Magisk的文章中,我们遇到的就是这种情境。结合 Ramdisk 的值,使用 Magisk 图标旁的「安装」> 「选择并修补一个文件」功能,Magisk 会修改我们提取的镜像供我们用 刷入或者引导进入系统。

这是 Magisk App 最为基本的用途,除了少分新机型外,这也是刷入 Magisk 最稳妥的方式。在每一次更新系统后,我们都推荐按此流程重新刷入。

情境二:Magisk 需要更新或者修复

在 Magisk v22 之前,每一次新版本发布都会提供 magisk.zip 与 magisk.apk 两个文件,前者代表着将被注入到系统的 Magisk 本体,后者则代表着用于管理和使用 Magisk 的应用。因此每一次打包 boot.img 镜像或是直接刷入到系统前,都需要下载一次托管于 GitHub 的 magisk.zip,十分不便。

在 Magisk v22 后,.zip 包与 .apk 包合二为一,安装的 Magisk App 本体自带了刷写功能,更新了应用本体即等于更新了即将准备注入到系统的 Magisk,不必频繁请求网络下载。

在检测到系统已经刷入 Magisk 后,Magisk 图标旁的「安装」子界面会多出一个「直接安装」选项。「直接安装」会将和 App 相同版本的镜像刷入系统。如果 Magisk 的一些功能莫名其妙地失效,可以尝试使用此功能重新挂载 Magisk。

而如果需要更新的话,按照前文提到的流程,只需要先在应用内根据提示更新 App 本体,再点击「升级」按钮就能自动刷入。

情境三:进行系统 OTA

系统在下载更新包后,会在安装前进行系统的完整性检查。很多 Root 工具因为修改了底层文件,导致系统无法通过此项检查而不能安装 OTA。Magisk 的优势正是「挂载」而非「改写」。当然,想要完成 OTA 还需要我们的手动操作。

首先,为了防止系统自动安装更新导致更新失败,刷入 Magisk 后的第一步就是关闭系统的「自动安装更新」选项。类 AOSP 的系统中,这个项目一般位于「者选项」界面;改动比较的系统中,这个选项可能位于系统更新 App。

读者应该记得,我们在安装 Magisk 时的确修改了系统的 boot.img 或者 recovery.img。因此,在收到厂商推送的更新后,我们需要点击 Magisk App 首页的「卸载 Magisk」>「还原原厂镜像」(不要重启)来恢复原来的镜像。此时理论上 OTA 应该能够正确安装。

禁止更新图片来自官方文档

下载 OTA 并安装后,系统会提示重启,重启后我们会失去 Magisk。因而我们还需要按照上一篇文章「打包镜像并刷入」章节中提到的提取镜像 > 修改镜像 > 刷入/引导启动镜像的方式再次安装 Magisk。

和 Magisk 本体不同,模块不需要重新安装。Magisk 将模块储存在一个文件夹()中,每次设备开机时,Magisk 会自动挂载该文件夹下的模块。原厂镜像无法挂载这些模块,但并不意味着这些模块文件被删除了;只要重新安装 Magisk,这些「蜇伏」的模块又能生龙活虎。

根据多年以来的刷机经验,分享给诸位一些重装时的技巧:

并非每一次系统更新都会幅改动 boot.img 或 recovery.img,也就是说,旧系统被 Magisk 打包过的镜像也极有可能顺利引导启动新系统。如果我们事先保存或者备份过旧系统中经 Magisk 修改过的镜像,系统更新后,在 bootloader 界面下用 尝试引导启动旧镜像,若系统和 Magisk 都正常,那么就不必再费心思提取新系统的镜像,点击「安装」>「直接安装」,此时「直接安装」的对象是新系统的分区,这样我们就能顺利为新系统刷入 Magisk 。

Magisk App 能在A/B 分区设备上保留 Magisk 进行系统更新。若 App 首页的 A/B 一栏值为「是」,我们只需要在重启安装 OTA 前点击 「安装」>「安装到未使用的槽位」选项即可。不过,经知名用户 Clyde 反映,分在 OTA 时带有分区校验的系统,如 Pixel 的 ROM 使用此方法概率会发生引导循环。出现相关问题还是直接一点,转用上文提到的通用刷入方式。

携 Magisk 进行系统 OTA 的流程可以总结为:关闭「自动安装更新」> 收到 OTA >「卸载 Magisk」/「还原原厂镜像」> 下载并安装 OTA >

A/B 分区为「是」的设备:不重启 >「安装」> 「安装到未使用的槽位」> 重启以更新系统。

其他设备:重启以更新系统 > 重新安装 Magisk。

如果遇到无法更新的问题,尝试不清除用户数据的刷写系统全量包方式,而后重新安装 Magisk。一加等机型在检测到 Magisk 后会自动下载全量包。常备全量包,翻车不慌张。

情境四:完全卸载 Magisk

在「卸载 Magisk」命令下还有一个「完全卸载」,点击此命令会在重启设备后卸载一切已经安装的模块和 Magisk 本身。

这个命令仅在我们想和 Magisk 说永别的时候用。想要卸载单个模块请参考本文第四章内容;Magisk 使设备出现问题时,建议排查 MagiskHide 和可疑模块,而非完全卸载。

授予应用 Root 权限

Android 是以 Linux 为内核的系统,在 Android 上获取 root 类似于在 Linux 上使用了 root 帐户。有了 root 权限,我们便能修改底层文件、注入脚本、调节系统性能、读取更详细的数据……当然,这一切并不需要我们手动去写脚本,我们需要做的只是通过 Magisk 将 root 权限授予给能够完成这些事情的应用们。

索取 root 权限的请求由应用发起,Magisk 此时会跳出类似于 Windows UAC 的弹窗供用户确认。想要防止恶意应用模拟点击,可以在 Magisk App 的设置中开启「生物识别验证」和「点按劫持保护」两个选项。

点击播放 GIF 0.0M

授权了应用之后,Magisk 默认会在该应用使用 root 权限时弹出通知,并且记录相关的日志。这两个选项隐藏在 Magisk App 的超级用户界面中,通过单击已授权的应用名称,便能找到控制通知和日志的开关。

点击播放 GIF 0.0M

用户授予 root 权限是将手机的完整控制权交给这个应用,因此请务必保证此应用值得信任。如果你在主力机上使用 root 权限,更应该保持克制和敬畏。

此处另外提一些关于授予 root 权限的小技巧:

不少应用索取 root 其实只是为了获得系统底层的分权限,这分授权其实无需 root,我们可以用 adb 输入一次命令授予,比如我们之前聊过的Buoy,或是 Gsam Battery Monitor 等电池监控类应用。

Root 被认为是一种低效、慢速的处理方式,Shizuku应运而生。它可以被当作 root 权限与需要 root 权限的应用之间的「中间商」,通过 root/adb 提升权限后,再为那些需要使用系统 API 与 adb 权限的应用授权,这比 root 权限更高效。如果你在使用「小黑屋」、「冰箱」、「App Ops」等应用,建议先安装 Shizuku 后再通过它来为这些应用授权。

显卡驱动怎么装到电视上面

迷你怎么检测更新内存

移动硬盘有系统怎么删除

为什么要用麻将机打麻将

儿童打乒乓球用什么工具

有什么名字非常好听的星座

明年属马的婚姻运气怎么样

苹果手机怎么添加视频号微信

娄底长沙seo优化报价

标签: