300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > redenvelope php 微信免越狱抢红包速成手册

redenvelope php 微信免越狱抢红包速成手册

时间:2024-04-09 14:55:49

相关推荐

redenvelope php 微信免越狱抢红包速成手册

很早之前就有开发者推出了红包插件,在iOS平台,从越狱到非越狱都能欢快的抢抢抢,只不过在不流行越狱的现在,大家还是倾向免越狱抢红包。在网上的免越狱教程都略显复杂,时间长了再次执行的时候还得翻看教程,本篇文章就是为了简化流程,让大家可以更有效率的抢红包。

本文所有操作均在macOS中执行。

1. 安装Theos

1.1 必备条件

Homebrew

Xcode(必须)

然后安装ldid和xz

brew install ldid xz

1.2 设置环境变量THEOS,执行如下命令:

echo "export THEOS=~/theos" >> ~/.profile

要想让配置生效,必须重启终端或者执行source ~/.profile。然后通过echo $THEOS可以查看是否生效。

1.3 检出Theos项目:

$ git clone --recursive /theos/theos.git $THEOS

1.4 获取iOS SDK:

目前Xcode提供的SDK中不再包含私有库,不过我们可以从SDKs repo获取到。

curl -LO /theos/sdks/archive/master.zip

TMP=$(mktemp -d)

unzip master.zip -d $TMP

mv $TMP/sdks-master/*.sdk $THEOS/sdks

rm -r master.zip $TMP

新版Theos的已内置CydiaSubstrate.framework(位于$THEOS/vendor/lib),所以不需要像网上其它教程中说的需要运行bootstrap.sh脚本或者是从手机上拷贝等方式。

2. 重新打包app

我们使用WeChatRedEnvelop这个项目来实现抢红包功能,大家可以换成其他项目,最终拿到dylib即可。

2.1 准备工作

rebuildapp

WeChatRedEnvelop

rebuildapp是一款重新打包app工具,支持注入dylib、创建plist以及自动读取开发者证书功能,通过rebuildapp可以极大简化app的注入流程,避开各种坑。

// 安装

npm install rebuildapp -g

需要提前准备的文件如下:

embedded.mobileprovision

WeChatRedEnvelop.dylib

脱壳过的微信app,从pp助手下载越狱版本或者砸壳获得

embedded.mobileprovision是iOS授权和描述文件,目前可以免费申请7天证书,满足临时使用,我们可以在Xcode中创建证书,如下图所示。

生成的文件在~/Library/MobileDevice/Provisioning Profiles/,但是该文件夹中文件名辨识度不高,我们可以用鼠标选中文件,然后按空格预览文件内容。

2.2 编译WeChatRedEnvelop.lib

注意:可以先尝试下make编译

如果出现fatal error: 'foundation/foundation.h' file not found错误可以参考我的解决方案,修改Makefile内容,主要调整TARGET字段。

THEOS_DEVICE_IP = localhost

THEOS_DEVICE_PORT = 2222

ARCHS = armv7 arm64

TARGET = iphone:11.2:7.0

include $(THEOS)/makefiles/common.mk

SRC = $(wildcard src/*.m)

TWEAK_NAME = WeChatRedEnvelop

$(TWEAK_NAME)_FILES = $(wildcard src/*.m) src/Tweak.xm

$(TWEAK_NAME)_FRAMEWORKS = UIKit

#指定版本

_THEOS_TARGET_LDFLAGS += -current_version 1.0

_THEOS_TARGET_LDFLAGS += -compatibility_version 1.0

include $(THEOS_MAKE_PATH)/tweak.mk

检出WeChatRedEnvelop代码,执行make过程如下:

$ git clone /buginux/WeChatRedEnvelop.git

$ cd WeChatRedEnvelop

$ make

# > Making all for tweak WeChatRedEnvelop…

# ==> Preprocessing Tweak.xm…

# ==> Compiling Tweak.xm (armv7)…

# ==> Compiling XGPayingViewController.m (armv7)…

# ...

# ==> Signing WeChatRedEnvelop…

.theos/obj/debug/WeChatRedEnvelop.dylib就是我们最终需要的需要的动态库,需要注意的是.theos是隐藏文件夹。

2.3 创建rebuildapp工作区

通过rebuildapp创建工作区,我们输入目录名称,以及保存的目录即可完成。

rebuildapp --new

? input project name: wechat

? which directory do you want to init to ? (default is current directory ./):

Success to download repo resign-app-template#master to /Users/neo/fe/tweak-demo/

工作区主要结构如下:

.

├── README.md

├── embedded.mobileprovision # iOS授权和描述文件,前文获取xxx.mobileprovision替换为同名文件

├── lib

│ └── WeChatRedEnvelop.dylib # 前文编译文件放到该目录下

├── package-lock.json

└── tool # 工具库

├── libsubstrate.dylib

└── yololib

我们需要把WeChatRedEnvelop.dylib和embedded.mobileprovision放到对应位置。

然后针对WeChatRedEnvelop.dylib,我们还需要处理里面的依赖项。

otool -L WeChatRedEnvelop.dylib

WeChatRedEnvelop.dylib (architecture armv7):

/Library/MobileSubstrate/DynamicLibraries/WeChatRedEnvelop.dylib (compatibility version 0.0.0, current version 0.0.0)

/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)

/System/Library/Frameworks/Foundation.framework/Foundation (compatibility version 300.0.0, current version 1349.1.0)

/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation (compatibility version 150.0.0, current version 1348.0.0)

/System/Library/Frameworks/UIKit.framework/UIKit (compatibility version 1.0.0, current version 3600.5.2)

/usr/lib/libsubstrate.dylib (compatibility version 0.0.0, current version 0.0.0)

/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.4.0)

/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0)

WeChatRedEnvelop.dylib (architecture arm64):

/Library/MobileSubstrate/DynamicLibraries/WeChatRedEnvelop.dylib (compatibility version 0.0.0, current version 0.0.0)

/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)

/System/Library/Frameworks/Foundation.framework/Foundation (compatibility version 300.0.0, current version 1349.1.0)

/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation (compatibility version 150.0.0, current version 1348.0.0)

/System/Library/Frameworks/UIKit.framework/UIKit (compatibility version 1.0.0, current version 3600.5.2)

/usr/lib/libsubstrate.dylib (compatibility version 0.0.0, current version 0.0.0)

/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.4.0)

/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0)

这里/usr/lib/libsubstrate.dylib使我们需要关注的,使用 install_name_tool 命令修改动态库的路径,指向 app 二进制文件的同级目录。

如果看到的不是/usr/lib/libsubstrate.dylib 而是 /Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate,按照同样方式处理就好。

install_name_tool -change /Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate @loader_path/libsubstrate.dylib WeChatRedEnvelop.dylib

2.4 注入动态库+重签名

执行一句话命令:

rebuildapp --auto ~/Downloads/apps/微信-7.0.5\(越狱应用\).ipa

整体操作流程大概如下,我们需要选择正确的证书,--auto命令会自动安装app到已连接手机中。

output目录也保留有ipa文件。

Will auto serach mobileprovision and identity

Begin resign...

证书如下,请选择一个(输入序号如:1)即可

1) DDDDDDDDDDDDDDDDDD "iPhone Developer: test@ (VVVVVVVV)"

2) GGGGGGGGGGGGGGGGGG "iPhone Developer: Xiao (YYYYYYY)"

2 valid identities found

warn Enter your choice: 1

[提示]您选择的证书为:iPhone Developer: test@ (VVVVVVVV)

[执行]文件验证开始

[执行]文件验证结束

[执行]Entitlements处理结束

[执行]开始验证provisionfile与证书是否匹配

[提示]所选证书VVVVVVVV)与provisionfile中不匹配,是否继续?继续请按1

warn Enter your choice: 1

[执行]解包开始

[执行]解包结束

[执行]拷贝/Users/neo/fe/tweak-demo/wx/workSpace/resign.mobileprovision-->/Users/neo/fe/tweak-demo/wx/workSpace/Payload/WeChat.app/embedded.mobileprovision开始

[执行]拷贝结束

[执行]拷贝/Users/neo/fe/tweak-demo/wx/tool/libsubstrate.dylib-->/Users/neo/fe/tweak-demo/wx/workSpace/Payload/WeChat.app开始

[执行]拷贝结束

[执行]拷贝WeChatRedEnvelop.dylib-->/Users/neo/fe/tweak-demo/wx/workSpace/Payload/WeChat.app开始

[执行]拷贝结束

[执行]修改info.plist开始

[执行]修改info.plist结束

[执行]签名开始

Reading binary: /Users/neo/fe/tweak-demo/wx/workSpace/Payload/WeChat.app/WeChat

[执行]签名结束

[执行]压缩开始

[执行]压缩结束

[成功]文件重签名ok了,赶快去试试吧

Finish resign...

3. 总结流程

安装Theos

准备 embedded.mobileprovision

编译 WeChatRedEnvelop.dylib

执行rebuildapp new创建工作区

文件embedded.mobileprovision、WeChatRedEnvelop.dylib放入工作区

处理WeChatRedEnvelop.dylib依赖

使用rebuildapp执行打包app

本文同步发表于作者博客: 微信免越狱抢红包速成手册

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。