После импорта substrate.h
, я продолжал использовать MSHookIvar
в функции из подключенного класса. Btw, я пытаюсь скомпилировать из Cygwin. Я не могу скомпилировать со следующими ошибками:Undeclared Identifier 'MSHookIvar'
Tweak.xm:20:16: error: use of undeclared identifier 'MSHookIvar'
hookedLabel = MSHookIvar<UILabel *>(self, "_textLabel");
^
Tweak.xm:20:27: error: unexpected interface name 'UILabel': expected expression
hookedLabel = MSHookIvar<UILabel *>(self, "_textLabel");
^
Tweak.xm:20:36: error: expected expression
hookedLabel = MSHookIvar<UILabel *>(self, "_textLabel");
^
Tweak.xm:20:38: error: expression result unused [-Werror,-Wunused-value]
hookedLabel = MSHookIvar<UILabel *>(self, "_textLabel");
И это мой код:
#import <UIKit/UIKit.h>
#import "substrate.h"
#import "logos/logos.h"
%hook DataView
UILabel *hookedLabel;
-(void)layoutSubviews {
UILongPressGestureRecognizer *lpg = [[UILongPressGestureRecognizer alloc] initWithTarget: self action:@selector(handleLongPress)];
[lpg setDelegate:self];
[lpg setMinimumPressDuration:1];
[self addGestureRecognizer:lpg];
hookedLabel = MSHookIvar<UILabel *>(self, "_textLabel");
}
%end
Я пытался импортировать logos.h
, но это все равно не помогает.
EDIT: Я понял, что у моего субстрата.h нет определения для MSHookIvar
, что мне делать?
Пожалуйста помочь