-安装好theos框架之后,下面用一个简单的例子进行说明编译过程

-新建一个代码目录

-进入terminal,cd到刚才的目录中

1、进入目录

2、执行/opt/theos/bin/nic.pl

3、选择模板11

4、输入你的插件名字 wechat_hook

5、输入你公司的名字 com.tencent.xin,名字随意

6、输入作者的名字,author 随意

7、输入你的插件需要Hook的目标App Bundle ID ,微信的是 com.tencent.xin

8、输入安装时需要结束进程的App Bundle ID,这里直接Enter跳过

执行完毕之后你将看到目录:



-进入terminal,cd 到 wechat_hook中



1、执行make指令之后你很可能看到错误

'''

Makefile:1: /makefiles/common.mk: No such file or directory

Makefile:6: /tweak.mk: No such file or directory

make: *** No rule to make target `/tweak.mk'. Stop.

'''

这个是因为路径不对,需要在终端中添加默认环境变量

-解决编译错误,在终端中输入,export THEOS=/opt/theos

-将Tweak.xm修改为下面的代码

'''

%hook ClassName

// Hooking a class method

  • (id)sharedInstance {

    return %orig;

    }

// Hooking an instance method with an argument.

  • (void)messageName:(int)argument {

    %log; // Write a message about this call, including its class, name and arguments, to the system log.

    %orig; // Call through to the original function with its original arguments.

    %orig(nil); // Call through to the original function with a custom argument.

    // If you use %orig(), you MUST supply all arguments (except for self and _cmd, the automatically generated ones.)

    }

// Hooking an instance method with no arguments.

  • (id)noArguments {

    %log;

    id awesome = %orig;

    //[awesome doSomethingElse];

    [awesome performSelector:@selector(doSomethingElse)];

    return awesome;

    }

// Always make sure you clean up after yourself; Not doing so could have grave consequences!

%end

'''

-然后make

如果看到下面的结果表明编译成功了


如果你觉的有帮助,请赞赏一点点(1元,2元,5元),多了不要,买瓶水喝。

代码地址:https://github.com/liqiushui/WeChatTweak

微信iOS消息拦截插件教程-第一个tweak编译过程的更多相关文章

  1. 微信iOS消息拦截插件教程-Tweak HelloWorld

    微信iOS消息拦截插件教程-Tweak HelloWorld 标签(空格分隔): 越狱开发教程 1.环境准备 准备一台越狱的手机,具体参照上一篇教程 搭建Theos越狱开发环境 2.开发过程 新建一个 ...

  2. iOS 微信消息拦截插件系列教程-(总目录)

    微信iOS消息拦截插件教程 标签: 越狱开发 背景介绍 本教程所有内容免费 本教程来源于一次知识分享,如果有需要了解更多的 请联系QQ:480071411 iOS逆向高级开发群:375024882 1 ...

  3. iOS 微信消息拦截插件系列教程-附录(服务端成果展示)

    微信iOS消息拦截插件教程 标签: 越狱开发 背景介绍 本教程所有内容免费 本教程来源于一次知识分享,如果有需要了解更多的 请联系QQ:480071411 iOS逆向高级开发群:375024882 服 ...

  4. 【原创分享·微信支付】C# MVC 微信支付之微信模板消息推送

    微信支付之微信模板消息推送                    今天我要跟大家分享的是“模板消息”的推送,这玩意呢,你说用途嘛,那还是真真的牛逼呐.原因在哪?就是因为它是依赖微信生存的呀,所以他能不 ...

  5. Unity3D与iOS消息交互方法(1)--iOS接收Unity3D发出的消息

    跨平台这种事情不管多NB, 总要有些与原生系统交互的方法, 比如  Unity3D与iOS消息交互方法. 一: 建立一个空的Unity工程. File -->  New Project 二: 编 ...

  6. C#微信公众号开发系列教程三(消息体签名及加解密)

    http://www.cnblogs.com/zskbll/p/4139039.html C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C ...

  7. C#微信公众号开发系列教程五(接收事件推送与消息排重)

    微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...

  8. C#微信公众号开发系列教程四(接收普通消息)

    微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...

  9. 开发openfire 消息拦截器插件PacketInterceptor

    开发消息拦截器的步骤跟开发简单插件步骤一样,要开发消息拦截器插件,首先继承PacketInterceptor包拦截类,然后在initializelPlugin()方法中注册拦截器,就可以实现inter ...

  10. iOS 9 Safari广告拦截插件

    相对于谷歌对广告拦截的禁止,苹果与之态度截然相反,继Mac版Safari加入广告拦截工具之后,即将到来的iOS9对Safari也引入了内容拦截插件-Content Blocker,并且开发者可以使用最 ...

随机推荐

  1. sql 语句系列(字符串之父与子之间)[八百章之第十二章]

    前言 介绍字符串和其子字符串直接的使用. 判断含有子字母的字符串 select * from emp 在mysql中: select emp.ename from emp where emp.enam ...

  2. linux 连接wifi

    前言 我使用树莓派的时候实际过的. 正文 第一步扫描wifi: iwlist wlan0 scan 然后配置: vim /etc/wpa_supplicant/wpa_supplicant.conf ...

  3. Web自动化实战:去哪儿网购票流程测试

    克隆源码 项目Github地址:https://github.com/gy-7/Web-automation-practice/tree/main/project1_qunar_booking_tic ...

  4. python异步字符串查找,asyncio和marisa_trie

    自然语言处理当中经常需要字符串的查找操作,比如通过查找返回字串在文本当中的位置,比如通过匹配实现的ner import pandas as pd import asyncio # data = pd. ...

  5. DC-1渗透靶场实战速通版

    "感谢您阅读本篇博客!如果您觉得本文对您有所帮助或启发,请不吝点赞和分享给更多的朋友.您的支持是我持续创作的动力,也欢迎留言交流,让我们一起探讨技术,共同成长!谢谢!" 文章为速通 ...

  6. 力扣357(java)-统计各位数字都不同的数字个数(中等)

    题目: 给你一个整数 n ,统计并返回各位数字都不同的数字 x 的个数,其中 0 <= x < 10n . 示例 1: 输入:n = 2输出:91解释:答案应为除去 11.22.33.44 ...

  7. 高德AR驾车导航解决方案

    简介: 高德从2018年首创了车载AR导航后,已经先后在后视镜.智能车盒.前装整车厂.后装车机产品.行车记录仪等众多场景落地应用,搭建了非常完整的AR导航生态. 日前,高德地图最新发布了v10.60新 ...

  8. Quick BI产品核心功能大图(五)移动端:让数据在更多业务场景中流通

    ​简介:将数据更好的融入日常工作中,一个重要的前提条件就是多端多渠道的数据触达和办公协同能力. Quick BI凭借移动端交互体验,帮助用户随时随地便捷查看报表,并通过在线协同方式,追踪策略的执行落地 ...

  9. Serverless 应用优化四则秘诀

    ​简介:Serverless 架构下,虽然我们更多精力是关注我们的业务代码,但是实际上对于一些配置和成本也是需要进行关注的,并且在必要的时候,还需要根据配置与成本进行对我们的 Serverless 应 ...

  10. 快速界定故障:Socket Tracer网络监控实践

    ​ 简介: Socket Tracer定位是传输层(Socket&TCP)的指标采集工具,通过补齐网络监控的这部分盲区,来达到快速界定网络问题的目标. ​ 作者 | 四忌 来源 | 阿里技术公 ...