Logos tweak

哈囉
我最近在學習IOS tweak插件
我在xcode上使用monkeydev套件的Logos tweak建立了一個deb檔案

#import <UIKit/UIKit.h>

@interface ViewController:UIViewController
@end
%hook ViewController



-(void) testfunc {
    %log;
    NSLog(@"Hookfunc");
    return ;
}
%end

我也在plist上設置測試專案的BundleID

這是我製作的一個測試專案

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self testfunc];
   
}
- (void) testfunc {
    NSLog(@"摳到的func");
}


@end

將此deb檔案及測試專案的ipa安裝至越獄手機上卻沒有hook到
但是相同的Logos程式碼使用monkeydev套件monkeyapp
卻可以正常hook到
想請問可以協助我嗎?
請不要再chatgpt思路了,他給出來的答案實在是無法解決問題
在麻煩各位大師了

从你的描述看,这个问题应该是与打包 deb 文件的过程相关。有几个可能的原因:

  1. deb 包里少了某些重要的文件。deb 包由控制文件(control)、数据文件(data.tar.)和描述文件(.desc)组成。控制文件和数据文件是必须的,描述文件是可选的。所以首先要确保 deb 包里至少有 control 和 data.tar.* 两个文件。
  2. 权限问题。deb 包里的文件权限不正确,导致无法注入到进程。应确保 data.tar.* 里的文件权限正确。
  3. 依赖问题。tweak 里使用了某些依赖但 deb 包里没有指定,导致 tweak 无法运行。应在 control 文件里指定 tweak 的依赖。
  4. deb 包的制作工具 Bug。有些 deb 包制作工具会导致生成的 deb 包无法正确运行。可以试试别的工具,比如 dpkg-deb。
  5. 签名问题。如果设备开启了 jailbreak 检测,未签名的 deb 包可能无法注入。可以给 deb 包添加签名。
    具体的解决办法:
  6. 仔细检查 deb 包的内容和结构,确保包含必须的 control 和 data.tar.* 文件,并且权限正确。
  7. 在 control 文件中指定 tweak 的依赖。
  8. 尝试用其他工具如 dpkg-deb 重新生成 deb 包。
  9. 尝试对 deb 包进行签名。
  10. 查看 tweak 的日志,看是否有其他报错信息。
  11. 尝试在 non-jailbreak 状态下运行 tweak,确定是否与 jailbreak 相关。