代码之家  ›  专栏  ›  技术社区  ›  Nava Carmon

GUI卡在uibackgroundmodes=voip,audio上

  •  3
  • Nava Carmon  · 技术社区  · 15 年前

    我有基于Tabbar的应用程序。当我使用plist uibackgroundmodes(我的应用程序应该支持VoIP)时,GUI不会加载。它在启动屏幕上很糟糕,不加载第一个选项卡视图。当我从info.plist中删除uibackgroundmodes属性时,它工作正常。更重要的是,当它卡住时按下Home(主页)按钮什么也不做。有人遇到过类似的问题吗?(模拟器上存在问题)

    谢谢,

    纳瓦

    4 回复  |  直到 14 年前
        1
  •  3
  •   Nava Carmon    15 年前

    看来,这个问题只发生在模拟器上,它在设备上工作…因此,对于模拟器版本,解决方案(临时的)不是将uibackgroundmodes放入info.plist。

        2
  •  0
  •   Paul Ardeleanu    15 年前

    您负责在进入和退出后台模式时加载/卸载界面。当离开后台时,您还需要相应地更新接口。

    iOS通过在将应用程序置于后台之前截屏并在将应用程序置于前台时显示(有点像启动应用程序时的default.png)以及一些uiimage缓存来提供帮助。

    可能值得共享一些代码。

        3
  •  0
  •   Benoît    15 年前

    支持后台状态转换
    支持后台状态转换是iOS 4及更高版本中应用程序的基本体系结构的一部分。尽管从技术上讲,要支持此功能,您必须做的唯一一件事是与iOS 4及更高版本的链接,正确地支持它需要一些额外的工作。具体来说,应用程序委托应该实现以下方法,并在每个方法中实现适当的行为:

    • 应用程序:DidFinishLaunchingWith选项:
    • 应用程序已激活:
    • 应用程序将恢复签名:
    • 应用程序输入背景:
    • 应用程序将进入前台:
    • 应用程序将终止:

    作为一个负责任的多任务应用程序
    与前台应用程序相比,在后台运行的应用程序所能做的工作更为有限。即使您的应用程序不在后台运行,在实现应用程序时,您也应该遵循某些指导原则。

    • 不要从代码中调用任何OpenGL ES。不能创建EAGLContext对象或发出任何类型的OpenGL ES绘图命令。使用这些调用将导致应用程序立即终止。
    • […]

    iOS Application Programming Guide

        4
  •  0
  •   Emmanuel    14 年前

    我也看到了这个虫子。这很烦人。这就好像应用程序被困在模拟器中,无法继续运行。当这种情况发生时,我知道如何“解开”它。

    在模拟器中,我只需进入菜单“硬件”>“锁定”,然后再次解锁手机。现在我停止调试程序,重新启动应用程序。这似乎让它重新焕然一新。

    幸运的是,这个错误不会发生在真实的手机上,只会发生在模拟器上。

    推荐文章