![4f123dc0ca54e9e8f5d446f918e13f18.png](https://i-blog.csdnimg.cn/blog_migrate/46c73669edad94399af33fa99bcd3363.jpeg)
马上就要过年了,相信大家逃不开的一个话题就是:发红包!早些年的信封红包,到现在的微信红包,图个开心,图个喜气。可是在微信里大家有没有遇到过这样的情况,总是有些人在群里是秒抢红包,难道他们真的时时刻刻的都盯在屏幕前等着红包的出现吗?答案是否定的(不然早眼瞎了)。今天我就来讲讲手机上那些自动抢红包的原理,以及微信刷步数,防撤回等等功能的秘密,但是说在前面,这些行为都是不正确的!不可取的!大家看了之后可不要去尝试啊!严重的话会有封号的风险,本文旨在揭秘,浅谈这其中的技术原理。
![c4ee68365ea741cbd8598b15c1cb448d.png](https://i-blog.csdnimg.cn/blog_migrate/2038c5a091f94d626e2652f8ea2cdc02.jpeg)
上文中我们谈手机虚拟定位的时候讲到了xposed框架,这是一个可以实现在安卓系统中修改系统的框架服务。本文就来着重介绍一下这个框架服务,也是有了他,才能够实现神奇的“微信步数八万八,所有红包带回家”(还有点小押韵)。这个框架可谓是神通广大,他可以在不修改APP本身的情况下改造一个APP!可能听起来有些绕口,但细细看下去相信你对他会有些许了解。
首先,我们要知道Android系统的核心是zygote进程,系统中所有的系统服务进程,应用程序进程都是从该进程fork出来的(小编个人的理解就是孵化,因为zygote就是受精卵的意思,该进程先生成好虚拟机给应用程序们使用,因为应用程序的运行需要各自独立的虚拟机,都各自去生成那太慢了,索性先给你生成好一个最初始的拿去用,拿去自己“孵化”成想用的虚拟机),所以xposed框架服务的主要实现方案是深入到了Android系统的核心之中,也就是改造了zygote进程。
![16ed75e4f60ed6f5a9028b15f7447aea.png](https://i-blog.csdnimg.cn/blog_migrate/d355fd6e0075802ef74a56471361007a.jpeg)
众所周知,安卓系统的应用层是使用java编程语言来编写的,安卓的应用程序也是使用java来编写的,Java程序是运行在虚拟机之上的,所以xposed框架会修改系统的zygote进程以及其生成的虚拟机,简单来讲其的改造实现方案就是劫持虚拟机的运行,让虚拟机优先执行我们想执行的函数,而不是应用程序自己的函数,所以就达到了在不修改APP本身的前提下改造APP的效果!因为他直接修改的是Android系统,所以要达到这样的修改,root权限(系统最高执行权限)自然是不可缺少的(相信喜欢鼓捣手机,刷机的小伙伴对于这个词汇一定熟悉吧)。
![c36d4eeb0ff9e839ddefc0e3d0cf1e7a.png](https://i-blog.csdnimg.cn/blog_migrate/c38b963a8b75041aa29e15db7515bc31.jpeg)
所以在这么一个框架服务的前提下,之中就有很多大神编写的模块,其中就有上篇文章降到的虚拟定位模块,以及本文提到的抢红包,刷步数等等模块,他的功能是十分强大的,不过各大app厂商也不是吃素的,他们也会有自己的xposed框架检测机制,一但被查到那后果还是十分严重的,例如现在xposed模块市场之中就很少有针对于支付宝app的模块,那就是因为支付宝app有完善的检测机制,让这些影响程序运行稳定的行为无所遁形。
![c4e0e172534c2ebe3e6bbda3f30b7918.png](https://i-blog.csdnimg.cn/blog_migrate/181263837bd389b891df60fcbccebc28.jpeg)
因此模块的编写者也在不断更新自己的模块,应用开发商也在不断的完善自己的app,毕竟谁都不想自己的app这么轻易的就被改造,就被影响运行,这也是一场相互角逐的过程,但我相信,在这样的角逐之中,我们的软件生态会越来越完善,用户体验也会越来越好!
我们可以使用xposed框架服务来改造自己的手机系统,达到高度定制化的目的,实现一些很酷炫的功能,在使用的过程中也可以对Android系统有更加深刻的理解与技术的提升,但尽量还是不要去影响其他第三方app的运行吧!