Проблемы SBApplicationController (всегда nil | не может получить журналы)
У меня странная проблема с простым приложением, которое я создаю с использованием Theos.
Я использую последние заголовки Springboard (сам их выгружал / исправлял), последние ldid и libsubstrate, и я тестирую на своем iPhone 5 (с iOS 7.0.4).
Это (вырезанный) Makefile:
include theos/makefiles/common.mk
APPLICATION_NAME = Reboot
Reboot_FILES = main.m RebootApplication.xm
Reboot_FRAMEWORKS = UIKit
include $(THEOS_MAKE_PATH)/application.mk
И это код внутри RebootApplication.xm:
-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
[self.window makeKeyAndVisible];
UIViewController *vc = [[UIViewController alloc] init];
vc.view.backgroundColor = [UIColor redColor];
self.window.rootViewController = vc;
[self.window makeKeyAndVisible];
id sbappc = [%c(SBApplicationController) sharedInstance];
NSLog(@"SBApplicationController: %@",sbappc);
NSLog(@"SBApplicationController: %@",sbappc);
NSLog(@"SBApplicationController: %@",sbappc);
NSLog(@"SBApplicationController: %@",sbappc);
NSLog(@"SBApplicationController: %@",sbappc);
return YES;
}
Мои вопросы:
1) Почему sbappc всегда равен нулю?
2) Почему я не вижу вывод NSLog в /var/log/syslog? (Я вижу все, кроме журналов этого приложения!).
Спасибо
1 ответ
Решение
SBApplicationController является классом SpringBoard. Поскольку вы выполняете свой код внутри приложения (не SpringBoard), класс не существует.
Вы, вероятно, хотите сделать твик.
Создайте новый проект Theos и выберите на этот раз шаблон "настройки".