2

私は現在iOSアプリケーションを開発しています。iPhone や iPad で起動にかかる時間を比較する必要があります。誰かアドバイスしてくれませんか?

4

2 に答える 2

1

main()との現在の時刻をメモしてから-application:didFinishLaunchingWithOptions:、差を計算します。例:

main.m:

// main.m

NSDate *startupDate;

int main(int argc, char **argv)
{
    NSAutoreleasePool *pool = [NSAutoreleasePool new];
    startupDate = [[NSDate alloc] init];
    int exitCode = UIApplicationMain(argc, argv, NULL, @"AppDelegate");
    [startupDate release];
    [pool drain];
    return exitCode;
}

// etc.

AppDelegate.m:

// AppDelegate.m

extern NSDate *startupDate;

- (BOOL)application:(UIApplication *)app didFinishLaunchingWithOptions:(NSDictionary *)opts
{
    NSDate *launchFinishedDate = [[NSDate alloc] init];
    NSTimeInterval launchTimeInSeconds = [launchFinishedDate timeIntervalSinceDate:startupDate];
    [launchFinishedDate release];

    // launchTimeInSeconds will contain the launch time in seconds (floating point).
    // create UI setup etc. as usual
}
于 2012-05-01T19:22:39.560 に答える
0

Instruments (Xcode に含まれる) を Time Profiler で使用して、アプリの起動を監視できます。

于 2012-05-01T23:42:51.673 に答える