Как добавить пользовательские виды на экран блокировки?

Я новичок в разработке приложений для iPhone с джейлбрейком. Я хотел бы добавить свои собственные представления, такие как кнопка, на экран блокировки и выполнить несколько простых задач, но я понятия не имею, какой API или функцию использовать. Могу ли я сделать это, используя специальный шаблон (например, написав собственный виджет уведомлений)? Или добавить подвиды в определенный вид?


person James Ye    schedule 19.09.2012    source источник
comment
Вы уже просматривали этот вопрос? Как правило, это хорошая информация для ознакомления с такими настройками.   -  person Nate    schedule 20.09.2012
comment
Большое спасибо. Это должно сработать. Я уже сбросил заголовки Springboard и теперь работаю над поиском классов, управляющих экраном блокировки.   -  person James Ye    schedule 20.09.2012


Ответы (1)


это мой код логотипа:

#import <UIKit/UIKit.h>
#import <SpringBoard/SBAwayController.h>
%hook SBAwayController
- (void)lock
{
    %orig;

    UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    btn.frame = CGRectMake(10, 100, 280, 50);
    [btn setTitle:@"Hello Notification" forState:UIControlStateNormal];
    UITapGestureRecognizer *singleTap = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(unlock)] autorelease];
    [btn addGestureRecognizer:singleTap];
    [[[objc_getClass("SBAwayController") sharedAwayController] awayView] addSubview:btn];

    return;
}
%end

когда я блокирую экран, кнопка добавляется на экран блокировки.

person James Ye    schedule 21.11.2012