Блокировать sms в Iphone iOS

-6

При использовании приложения я хочу заблокировать все входящие вызовы и SMS. Он должен работать как минимум на jailbroken iphone. У меня есть этот код, который блокирует вызовы, но не SMS - как я могу это исправить?

 importCoreTelephony/CoreTelephonyDefines.h>

extern NSString const *kCTSMSMessageReceivedNotification; extern
NSString const *kCTSMSMessageReplaceReceivedNotification; extern
NSString const *kCTSIMSupportSIMStatusNotInserted; extern NSString
const *kCTSIMSupportSIMStatusReady;

typedef struct __CTCall CTCall; extern NSString
CTCallCopyAddress(void, CTCall *);

void * CTSMSMessageSend(id server,id msg); typedef struct
__CTSMSMessage CTSMSMessage; NSString *CTSMSMessageCopyAddress(void *, CTSMSMessage *); NSString *CTSMSMessageCopyText(void *, CTSMSMessage
*);

int CTSMSMessageGetRecordIdentifier(void * msg); NSString *
CTSIMSupportGetSIMStatus(); NSString *
CTSIMSupportCopyMobileSubscriberIdentity();

id CTSMSMessageCreate(void* unknow/always 0/,NSString*
number,NSString* text); void * CTSMSMessageCreateReply(void*
unknow/always 0/,void * forwardTo,NSString *text);

id CTTelephonyCenterGetDefault(void); void
CTTelephonyCenterAddObserver(id, id, CFNotificationCallback, NSString
*, void ,int); void CTTelephonyCenterRemoveObserver(id,id,NSString,void*); int
CTSMSMessageGetUnreadCount(void);

void * CTCallDisconnect(CTCall *call);

static void callback(CFNotificationCenterRef center, void *observer,
CFStringRef name, const void *object, CFDictionaryRef userInfo) {

NSString *notifyname = (__bridge NSString *)name;

if ([notifyname
isEqualToString:@"kCTCallIdentificationChangeNotification"]) {

NSDictionary *info = (__bridge NSDictionary *)userInfo;

CTCall *call = (__bridge CTCall *)[info objectForKey:@"kCTCall"];

NSString *caller = CTCallCopyAddress(NULL, call);

NSLog(@"RECEIVED CALL: %@", caller);

CTCallDisconnect(call);

} }

static void signalHandler(int sigraised) {

printf("\nInterrupted.\n"); exit(0); }

В viewdidload:

 id ct = CTTelephonyCenterGetDefault();
CTTelephonyCenterAddObserver(ct, NULL, callback, NULL, NULL,
CFNotificationSuspensionBehaviorHold);

sig_t oldHandler = signal(SIGINT, signalHandler); if (oldHandler ==
SIG_ERR) {

printf("Could not establish new signal handler"); exit(1); }

printf("Starting run loop and watching for notification.\n");
CFRunLoopRun();

спросил(а) 2021-01-25T19:44:50+03:00 4 месяца, 4 недели назад
1
Решение
140

Я думаю, что вы сделали некоторую синтаксическую ошибку в следующей строке, проверьте ее

      id CTSMSMessageCreate(void* unknow/*always 0*/,NSString* number,NSString* text);
void * CTSMSMessageCreateReply(void* unknow/*always 0*/,void * forwardTo,NSString *text);

ответил(а) 2021-01-25T19:44:50+03:00 4 месяца, 4 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема