首先,这个应用程序不需要进入App Store。
我在想下面的沿着路线应该会起作用:
mach_port_t *p;
void *uikit = dlopen(UIKITPATH, RTLD_LAZY);
int (*SBSSpringBoardServerPort)() =
dlsym(uikit, "SBSSpringBoardServerPort");
p = (mach_port_t *)SBSSpringBoardServerPort();
dlclose(uikit);
void *sbserv = dlopen(SBSERVPATH, RTLD_LAZY);
int (*setAPMode)(mach_port_t* port, const char* appID, BOOL suspended, void* unknown, void* unknown2) =
dlsym(sbserv, "SBSLaunchApplicationWithIdentifier");
setAPMode(p, "com.apple.weather", NO, nil, nil);
dlclose(sbserv);
字符串
然而,我得到了exc_bad_access
,这可能是因为它需要一个auth token -我可能是错的。
或者,我尝试使用以下方法:
Class $SBApplicationController=objc_getClass("SBApplicationController");
NSLog(@"[$SBApplicationController sharedInstance], %@", [$SBApplicationController sharedInstance]);
型
遗憾的是输出为空-所以我猜这不能在应用程序中完成。
有什么想法吗?
1条答案
按热度按时间lc8prwob1#
iOS沙箱将阻止或杀死任何不是由iOS启动的进程。