我一直在构建一个 iOS 应用程序,并一直在模拟器和我的 iPad 上对其进行测试。一切都很完美,直到——
当我最近将注册推送通知的代码添加到我的 时AppDelegate.m 文件。现在,当我尝试在设备上运行该应用程序时,该应用程序会在初始屏幕上徘徊一段时间,然后 xCode 出现以下错误。
process launch failed: timed out waiting for app to launch
这是我添加的代码,以防万一:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 80000
if ([[UIApplication sharedApplication]respondsToSelector:@selector(registerUserNotificationSettings:)])
{
UIUserNotificationType userNTypes = (UIUserNotificationTypeAlert|UIUserNotificationTypeBadge|UIUserNotificationTypeSound);
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:userNTypes categories:nil];
NSLog(@"sherikkum registering 8.xx...");
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
[[UIApplication sharedApplication] registerForRemoteNotifications];
}
else
{
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
}
#else
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
#endif
return YES;
}
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSLog(@"My token is: %@", deviceToken);
//I added this alert coz i couldnt view NSLogs - coz my xcode wont connect
UIAlertView *tokenalert = [[UIAlertView alloc] initWithTitle:@"Token"
message:[NSString stringWithFormat:@"%@",deviceToken]
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil, nil];
[tokenalert show];
}
- (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
NSLog(@"Failed to get token, error: %@", error);
}
谢谢
最佳答案
在运行您的应用程序时,您可能正在使用分发证书而不是开发人员证书。在 中更改它目标 => build设置 => 代码签名 .
如果您使用从分发证书创建的配置文件,您的代码将不会在运行 xcode 的设备上运行。您需要使用从开发证书创建的配置文件。有关配置文件和证书的更多详细信息,请阅读 Apple's Documentation.
关于ios - 运行应用程序时 xCode 失去与设备的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28229824/