【转】不需要 Root,也能用上强大的 Xposed 框架:VirtualXposed
如果你喜欢折腾 Android 设备,那么你应该对 Xposed 的大名有所耳闻。

这个第三方框架,让许多 Android 玩家都爱不释手。通过对系统框架的「偷天换日」,它可以修改系统与应用的各种数据,籍此实现无数种可能性,同时也大大地提升了 Android 系统的可玩性。
参考阅读:关于 Android 7.1 的 Xposed,你想知道的都在这
但由于涉及到对系统底层的一些改动,Xposed 的使用也有着各种限制;例如,必须要解锁手机的 Bootloader,以及获取 Android 的 Root 权限等。
然而,有些设备在执行这些操作时可能并不方便,甚至无法解锁或者 Root。
但俗话说得好,「办法总比困难多」。VirtualXposed 的出现,为这些设备带来了一丝曙光;开发者称,借助它,即使在没有 Root 权限的情况下,也可以使用 Xposed 框架!

它是如何实现的?体验怎样?使用时又会遇到什么问题?接下来的文章中,这些问题将会一一得到解答。
原理是什么?
首先,VirtualXposed 并未对系统底层进行任何修改,也没有利用什么奇怪的漏洞。
它的工作原理,有点像那些双开软件。你可以这么理解:它在你的手机里生成了一个「虚拟环境」,再在这个环境中启用 Xposed。一切都是虚拟的,这也是它叫做 VirtualXposed 的原因。
正因为此,你需要使用的 Xposed 框架与框架所对应的应用,都需要安装在这个虚拟环境中,才能起作用。
举个例子,如果你要在钉钉上应用某个虚拟位置的框架,你必须同时把二者都安装到 VirtualXposed 中。

只在 VirtualXposed 中安装框架,是不会对系统中的钉钉起任何作用的。同理,直接将框架安装在系统上,或是将应用和框架都安装在系统上,也都不会起任何作用。

了解了它的运行原理之后,接下来要说的,就是如何使用这款「神奇」的应用了。
安装应用&框架
初次打开 VirtualXposed(下文中或简称 VX)后,呈现在眼前的,是这个类似于 Android 启动器的界面。

不要怀疑,你并没有装错软件;还记得上面介绍的原理吗?这是一个「虚拟空间」。而这个启动器,就相当于「虚拟空间」的入口。
和 Pixel Launcher 一样,向上滑动就可以打开应用抽屉,安装到 VirtualXposed 的应用都会在其中显示;但一开始只有预先装好的 Xposed Installer:

如果一切正常,「虚拟环境」中的 Xposed 应该是已经启用的,打开后会显示「Xposed 框架已激活」......即使我的手机并没有解锁,以及获取 Root 权限。

有三种方法可以将应用与模块安装到 VirtualXposed 中。第一种,是「克隆应用」,即将已经安装在系统中的应用添加到 VirtualXposed。
回到 VX 的桌面,点击那个看上去像是应用抽屉的按钮,可以打开 VX 的设置选项:

选择「添加应用」,在已经安装到系统中的应用中进行勾选,确认后即可将它们「克隆」到 VX 的「虚拟环境」里。

如果想要添加并未安装的应用或模块,可以选择第二种方式;即在各种文件管理器中打开 .apk 安装包后,选择「安装到 VirtualXposed」:

另外,如果你已经将各种市场或是浏览器添加到了 VX 中,也可以直接通过这些渠道下载并安装应用。

当然,如果只是想安装模块,还可以直接通过内置的 Xposed Installer 搜索并安装:

添加到 VirtualXposed 中的应用,运行起来与安装到系统中的应用几乎无异;可以正常接收通知,以及浏览本机中的图片等文件。

除此之外,它还可以像「双开」软件一样,同时运行两个相同的应用,并在多任务中进行切换,甚至还可以分屏。从 VirtualXposed 中打开的应用,会加上 [Admin] 的前缀。

想要管理 VX 中的应用进程或是卸载应用,前往设置即可,直接在抽屉中长按图标也可以实现部分操作。

有趣的是,VX 中的启动器,本质上也的确是个 Pixel Launcher。如果愿意的话,你甚至还能在设置中更换图标包......
「万事俱备,只欠东风」。既然应用和模块都已经准备完毕,那么是时候试试看,它能不能正常使用那些框架了。
应用框架测试
接下来,就是「见证奇迹的时刻」。
从 VirtualXposed 官方网站上给出的支持模块列表中,我挑选了两款框架进行测试。其中一款名为 MDWechat,是一个能让微信界面 Material Design 化的模块。
参考阅读:用两款插件让微信更符合 Material Design 设计
激活模块的方式,与实机里的 Xposed 大致无异。打开 VX 中的 Xposed Installer,然后前往「模块」,就能看到安装好的模块了。

按道理来说,接下来的步骤应该是「勾选模块,然后重启手机」;然而在 VX 中,启用模块并不需要真的重启手机。只要在勾选模块后,前往设置,点击最下方的「重启」即可。「重启」的速度极快,因此作者还设置了一个「温馨」的 Toast 提醒......

完成这些操作后,再打开微信;令人兴奋的是,MDWechat 的确被成功激活了。

Material Design 版微信,看上去如何?
我又测试了另一个模块:应用变量,通过它可以分应用修改机型,从而显示各种不同的来源「小尾巴」。

它也可以成功地被激活,并对 VX 中的应用进行修改。现在,我也是用 Mate 9 保时捷设计发微博的人了!(笑)

当然,这些模块只会对 VX 里的应用生效。但的确,VirtualXposed 在一台既没有解锁,也没有 Root 的设备上,成功应用了 Xposed 框架模块。
如果嫌每次都要在 VX 的启动器中打开应用麻烦,可以长按图标,选择「创建快捷方式」,这个应用就出现在你的系统桌面上了,应用名会加上(VXP)的后缀。

插件出问题了,怎么办?不用担心,VX 并不会影响手机系统,如果真的出现了严重到无法正常使用的情况,直接卸载 VX 即可。
总结
目前的 VirtualXposed 还不甚完善。它尚未支持需要使用资源 Hook 的模块,对一部分模块的兼容性也尚待增强。
同时,它的工作原理,也决定了任何修改系统的 Xposed 模块均无法使用;但瑕不掩瑜,VirtualXposed 的确是个很有前途的项目。它大大降低了 Xposed 框架的使用门槛,让更多人能体验到各种花样百出的模块。
对于已经在系统中启用了 Xposed 的用户,还可以借助 VirtualXposed 方便地测试模块;既不用频繁重启手机,又毋需担心「翻车」后影响正常使用。
希望作者能进一步地完善这个项目,提升兼容性与稳定性,造福更多 Android 玩家。
想要了解更多详情,可以访问 VirtualXposed 的 GitHub 页面。
from:https://sspai.com/post/44447
【转】不需要 Root,也能用上强大的 Xposed 框架:VirtualXposed的更多相关文章
- 安卓4.0以上系统怎么不用root激活XPOSED框架的方法
在大多单位的引流或业务操作中,基本上都需要使用安卓的高端技术Xposed框架,近期,我们单位购买了一批新的安卓4.0以上系统,基本上都都是基于7.0以上版本,基本上都不能够刷入root超级权限,即便是 ...
- vivo机器如何无需root激活XPOSED框架的流程
在大多运行室的引流或者业务操作中,理论上需要使用安卓的神一般的Xposed框架,上周我们运行室购来了一批新的vivo机器,理论上都是基于7.0以上系统版本,理论上不能够获得root的su权限,虽然一部 ...
- vivo4.0系统怎么不ROOT激活Xposed框架的教程
在越来越多应用室的引流,或业务操作中,大多数需要使用安卓的强大Xposed框架,前几天,我们应用室采购了一批新的vivo4.0系统,大多数都是基于7.0以上系统,大多数不能够刷入Root的su权限,即 ...
- oppo设备怎么样无需root激活XPOSED框架的教程
在非常多部门的引流或业务操作中,基本上都需要使用安卓的强大XPOSED框架,近期,我们部门购来了一批新的oppo设备,基本上都都是基于7.0以上版本,基本上都不能够获得root的su超级权限,即使一部 ...
- oppo8.0系统怎么无需Root激活Xposed框架的经验
在较多部门的引流,或业务操作中,基本都需要使用安卓的神一般的xposed框架,近期我们部门购来了一批新的oppo8.0系统,基本都都是基于7.0以上版本,基本都不能够刷入root的su权限,虽说一部分 ...
- oppo5.0以上系统怎么样不Root激活Xposed框架的经验
在非常多单位的引流或者业务操作中,基本上都需要使用安卓的黑高科技术Xposed框架,前几天我们单位购来了一批新的oppo5.0以上系统,基本上都都是基于7.0以上版本,基本上都不能够获取root超级权 ...
- 安卓5.0系统怎么无Root激活XPOSED框架的方法
在大多团队的引流或业务操作中,基本上都需要使用安卓的强大Xposed框架,几天前,我们团队买来了一批新的安卓5.0系统,基本上都都是基于7.0以上系统,基本上都不能够获得Root的su权限,纵然一些能 ...
- 小米平板8.0以上系统如何不用root激活xposed框架的流程
在大多使用室的引流,或业务操作中,基本上都需要使用安卓的强大XPOSED框架,近来我们使用室购来了一批新的小米平板8.0以上系统,基本上都都是基于7.0以上系统版本,基本上都不能够刷入ROOT的su权 ...
- 小米5.0以上系统如何没ROOT激活xposed框架的经验
在较多企业的引流或者业务操作中,大多数需要使用安卓的黑高科技术xposed框架,这段时间,我们企业购买了一批新的小米5.0以上系统,大多数都是基于7.0以上版本,大多数不能够获取Root的su超级权限 ...
随机推荐
- 新DevOps八荣八耻
昀哥 20181001以随时可扩容可缩容可重启可切换机房流量为荣,以不能迁移为耻. 以可配置为荣,以硬编码为耻. 以系统互备为荣,以系统单点为耻. 以交付时有监控报警为荣,以交付裸奔系统为耻. 以无状 ...
- IDEA指定.class文件输出位置
1.File > Project Structure > Project > Project compiler output 项目中的默认编译输出总目录 2.我习惯于把.class ...
- 网络协议 20 - RPC 协议(上)- 基于XML的SOAP协议
[前五篇]系列文章传送门: 网络协议 15 - P2P 协议:小种子大学问 网络协议 16 - DNS 协议:网络世界的地址簿 网络协议 17 - HTTPDNS:私人定制的 DNS 服务 网络协议 ...
- 为什么要重写hashcode和equals方法?初级程序员在面试中很少能说清楚。
我在面试 Java初级开发的时候,经常会问:你有没有重写过hashcode方法?不少候选人直接说没写过.我就想,或许真的没写过,于是就再通过一个问题确认:你在用HashMap的时候,键(Key)部分, ...
- C#版[击败99.69%的提交] - Leetcode 242. 有效的同构异形词 - 题解
C#版 - Leetcode 242. 有效的同构异形词 - 题解 Leetcode 242.Valid Anagram 在线提交: https://leetcode.com/problems/val ...
- 前后端同学,必会的Linux常用基础命令
无论是前端还是后端同学,一些常用的linux命令还是必须要掌握的.发布版本.查看日志等等都会用到.以下是我简单的总结了一些简单又常用的命令,欢迎大家补充.希望能帮助到大家 本文首发于公众号 程序员共成 ...
- springboot~@Query到DTO对象
我们有时在进行开发过程中,使用jpa的@Query注解去选择多张表然后返回一个DTO对象,这个时候我们需要特殊处理一下,因为默认情况下,你的jpa代码是不认DTO对象的. 参考文章:https://s ...
- 完美解决phpstudy安装后mysql无法启动(无需删除原数据库,无需更改任何配置,无需更改端口)直接共存
PHPstudy与原Mysql兼容解决 一.前言 今天学习php,当然是要先安装好运行环境了,phpstyudy是一个运行php的集成环境, 一键安装对新手很友好,与时作为一个新手,便跟着教程安装了p ...
- Css-移动端适配总结
前言 工作以后,大部分的业务工作都是基于移动端H5的,开发过程中学习了很多东西,遇到过许多问题,诸如rem\em\css px\device px等,本文纯属个人的归纳总结,如有问题,请指出亲喷~ P ...
- vue-resource实现数据的绑定、添加、删除
vue-resource实现数据的绑定.添加.删除 <!DOCTYPE html> <html lang="en"> <head> <ti ...