Кто-нибудь знает, почему я получаю ошибку компоновщика при попытке скомпилировать следующий код:
extern void * _CTServerConnectionCreate(CFAllocatorRef, int (*)(void *, CFStringRef, CFDictionaryRef, void *), int *);
int callback(void *connection, CFStringRef string, CFDictionaryRef dictionary, void *data)
{
return 0;
}
%hook UIKeyboard
-(id)hitTest:(CGPoint)test withEvent:(id)event
{
int x = 0;
_CTServerConnectionCreate(kCFAllocatorDefault, callback, &x);
return %orig;
}
%end
make вывод:
Неопределенные символы для архитектуры armv6:
" CTServerConnectionCreate ( _CFAllocator const *, int () (void , __CFString const *, __CFDictionary const *, void *), int *)", на который ссылаются из:
$ _ungrouped $ UIKeyboard $ hitTest $ withEvent $ (UIKeyboard *, objc_selector *, CGPoint, objc_object *) в Tweak.xm.o
ld: символ (ы) не найден для архитектуры armv6
collect2: ld вернул 1 статус выхода
Некоторые примечания:
- Я связываюсь с CoreTelephony с помощью -рамки CoreTelephony
- Я использую код отсюда Пример базовой телефонии
- Я пробовал на iOS 4.x и iOS 5.x
- Я использовал нм , чтобы убедиться, что вызов функции находится внутри двоичного файла
И да, я на взломанном устройстве.
Спасибо;)