如何知道应用程序首先在Mac上运行

时间:2011-12-29 14:58:55

标签: xcode macos cocoa

在Windows上,我们可以将值写入注册表以了解

但我怎么知道我的应用程序是否是第一次在mac上运行?我需要执行一些初始化任务。

由于

2 个答案:

答案 0 :(得分:7)

您正在寻找班级NSUserDefaults(请参阅Apple Documentation

例如:

#define kAlreadyBeenLaunched @"AlreadyBeenLaunched"

    if (! [[NSUserDefaults standardUserDefaults] boolForKey:kAlreadyBeenLaunched]) {
        // This is our very first launch

        // Setting userDefaults for next time
        [[NSUserDefaults standardUserDefaults] setValue:[NSNumber numberWithBool:YES] forKey:kAlreadyBeenLaunched];

        // Do your first time stuff
        //<##>
    }

您将使用相同的类来保存和检索用户首选项。

此值将保存在~/Library/Preferences/<your_bundle_id>.plist中。通过查看文件,这对于了解调试很有用,但您不应该依赖代码中的此实现细节。

答案 1 :(得分:1)

还有很多其他人已经问过这个问题。

我猜这个是最有帮助的。 iPhone: How do I detect when an app is launched for the first time?

提及:它的工作方式与iOS系统完全相同。