iphone - AppDelegate 未被调用

标签 iphone ios xcode breakpoints appdelegate

我似乎根本无法调用我的 appdelegate。使用断点,它甚至看起来不像是第一个 like 被调用。

这是我的 main.m 中的内容

int main(int argc, char *argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegatename");
[pool release];
return retVal;
}

最佳答案

假设您的 AppDelegateMyAppDelegate , 在 MyAppDelegate.h 中定义和 MyAppDelegate.m .

试试这个:

#import <UIKit/UIKit.h>
#import "MyAppDelegate.h"

int main(int argc, char *argv[])
{
    @autoreleasepool
    {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([MyAppDelegate class]));
    }
}

编辑:这当然是支持 ARC 的应用程序。如果你不使用 ARC,你应该考虑取消它。如果您坚持使用非 ARC 方法,那么只需更换您的线路:

int retVal = UIApplicationMain(argc, argv, nil, @"AppDelegatename");

int retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([MyAppDelegate class]));

在这两种情况下,您都必须替换 MyAppDelegate使用您的应用程序委托(delegate)类的真实名称。

编辑2:

根据您的附加命令,您的 main.m 应该如下所示:

#import <UIKit/UIKit.h>
#import "Radio99AppDelegate.h"

int main(int argc, char *argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    return UIApplicationMain(argc, argv, nil, NSStringFromClass([Radio99AppDelegate class]));
    [pool release];
    return retVal;
}

我不确定您使用的是 radio99AppDelegate 还是 Radio99AppDelegate - 最后一个是“标准”。如果这是一个新项目,明智的做法是考虑将其“翻译”为 ARC。内存管理的麻烦大大减少。

关于iphone - AppDelegate 未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15142850/

相关文章:

iphone - iOS 捕捉视频

iphone - 如何在反射 UIImageView (带有变化的图片)时摆脱以前的反射?

ios - 将一天中的当前时间减少到毫秒错误

iphone - 收到内存警告和应用程序崩溃

ios - UIApp 为 nil,这意味着我们无法将控制操作分派(dispatch)给它们的目标

iphone - 如何使用 NSUrl 参数调整 NSString ?

iphone - 创建自定义 UIScrollView 滚动器

ios - CloudKit 订阅不能在代码中创建吗?

ios - 静态菜单场景中的 SpriteKit 内存泄漏

ios - ScrollView 中同时居中和滚动的约束