代码之家  ›  专栏  ›  技术社区  ›  ManniAT

iphone待机按钮

  •  0
  • ManniAT  · 技术社区  · 15 年前

    用户按下待机按钮时是否发生事件?

    我可以禁用“自动待机”(autolock)——之所以禁用,是因为我的应用程序是一种路由应用程序。

    但是备用按钮呢?

    问题在于,如果iPhone处于待机状态,GPS就会关闭。所以我的应用程序认为它有GPS问题。这实际上是错误的-它只是待机状态,这意味着应该进行不同的处理,就像我在“运行模式”(用户看到应用程序)中发生GPS问题时那样。

    我找不到针对这种情况的事件(既不准备就绪,也不准备退出)

    1 回复  |  直到 15 年前
        1
  •  2
  •   Dimitris    15 年前

    您必须收听以下两个通知:

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appLostFocus:) name:UIApplicationWillResignActiveNotification object:[UIApplication sharedApplication]];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appGotFocus:) name:UIApplicationDidBecomeActiveNotification object:[UIApplication sharedApplication]];
    

    并妥善处理:

    - (void)appLostFocus:(NSNotification*)notification
    {
        NSLog(@"app lost focus");
    }
    
    - (void)appGotFocus:(NSNotification*)notification
    {
        NSLog(@"app got focus");
    }
    

    - (void)applicationDidFinishLaunching:(UIApplication *)application { 
    
        [[UIApplication sharedApplication] setIdleTimerDisabled:YES];
    
    //...
    }