Iphone 5应用程序由另一个应用程序启动

时间:2013-12-17 07:21:35

标签: ios5 ios6

我正在使用以下代码:

int (*openApp)(CFStringRef, Boolean);
void* sbServices = dlopen("/System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices", RTLD_LAZY);
openApp= (int(*)(CFStringRef, Boolean))dlsym(sbServices,"SBSLaunchApplicationWithIdentifier");
openApp(CFSTR("com.apple.mobilephone"), FALSE);
dlclose(sbServices);

这在模拟器中工作正常,但在设备上却出现以下错误:

  

使用kern_return_t所需的com.apple.springboard.launchapplications   _SBXXLaunchApplication(mach_port_t,char *,sbs_url_string_t,sbs_property_list_data_t,mach_msg_type_number_t,   sbs_property_list_data_t,mach_msg_type_number_t,   SBSApplicationLaunchFlags,SBSApplicationLaunchError *,audit_token_t)

上述问题有解决方案吗?

1 个答案:

答案 0 :(得分:1)

更好地使用[[UIApplication sharedApplication] openUrl:[NSURL URLWithString:@"YOUR URL"]];您需要在第二个应用中设置自定义网址方案。检查此tutorial或只使用“iphone自定义网址方案”进行搜索。有很多很好的教程。