2012-03-02 117 views
-3

我试图让我的应用程序与推送通知一起工作,并遵循本教程,它几乎像一个魅力...我虽然试图运行应用程序时遇到问题,我认为它的xcode3到Xcode4问题。 ..推送通知问题?

我得到这个错误: 2012-03-02 15:00:55.786 PushChat1 [5276:707]的应用预计将有在应用程序启动的最后一个根视图控制器

而且下面是我在我的申请didFinishLaunchingWithOptions

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    //self.window.rootViewController = self.viewController; 
    _window.rootViewController = _viewController; 
    [self.window makeKeyAndVisible]; 

    // Let the device know we want to receive push notifications 
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes: 
    (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)]; 

    return YES; 
} 

我真的希望得到帮助,并提前致谢:-)

回答

1

这不是关于推通知。你的问题是你的视图控制器。它似乎是零。如果所有连接都正确设置,请检查您的笔尖文件。

+0

它似乎是零?不是经文你的意思?和nib文件...是否与xib相同? – 2012-03-02 14:20:46

+0

是的,它是一样的。阅读@joris答案! – calimarkus 2012-03-02 14:24:00

1

错误不是通知错误。您需要将rootViewController设置为您的应用。

什么是您的_viewController

1

该错误表明未设置窗口的rootViewController属性。所以在赋值_viewController是零(你将该属性设置为零)或_window是零(你发送消息为零)。

您直接访问您的属性_viewController_window。我没有看到任何创建它们的代码。在使用它们之前确保对象存在。检查你的xib,看看是否设置了正确的插座。如果在属性访问器中创建对象,请确保使用点符号(self.window/self.viewController)访问属性,而不是直接访问它们。

+0

感谢您的回答。我不知道我明白,但这里有一些...在我的AppDelegate.h我已经宣布他们我认为: class ViewController; interface AppDelegate:UIResponder property(strong,nonatomic)UIWindow * window; property(strong,nonatomic)ViewController * viewController; 结束 – 2012-03-02 14:36:26

+0

你必须检查你的笔尖文件。有没有创建一个viewcontroller? – calimarkus 2012-03-05 11:00:01

+0

把CFShow(_window);和CFShow(_viewController);在你的方法之上并告诉我们,什么被记录到控制台。 – calimarkus 2012-03-05 11:00:49