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

iPhone应用程序处于挂起状态,由url启动,显示default.png

  •  5
  • NWCoder  · 技术社区  · 14 年前

    该应用程序响应自定义URL,并在挂起状态下正确启动。问题是,当以这种方式启动时,是否可以禁用显示default.png?

    一个清晰的用例:

    1. 应用程序正常启动
    2. 按下Home(主页)按钮,应用程序进入待机状态。
    3. 应用程序识别的方案的URL在Mobile Safari中被点击。
    4. 启动完成之前,用户会看到default.png。

    正如您可能知道的,当快速应用程序切换激活时,应用程序通常会重新显示最后一个状态的屏幕截图,而不是默认的.png。这就是我希望在URL启动时也发生的情况。

    3 回复  |  直到 13 年前
        1
  •  3
  •   Brad    14 年前

    这听起来像是正在进行的是,快速应用程序切换实际上不工作。所以:

    1. 确保正在为OS 4.0构建SDK应用程序。如果您不这样做,您的应用程序将不会有快速应用程序切换支持。

    2. 看看快速应用程序切换是否正常(否则)与您的应用程序一起工作。也就是说,当您切换到Safari,然后重新启动应用程序时,是否会得到“default.png”?

    3. 在调试器下运行应用程序,但在实际设备上运行。让问题发生,进入管理器,查看设备日志。如果内存不足导致应用程序 结束 当Safari启动时,需要 重新发射 选择URL时。

    4. 我相信有 机制到位。在我的应用程序中,我不支持“使用URL启动”-但我支持 Do支持应用程序委托的调用:

    -(BOOL) application:(UIApplication *) application handleOpenURL:(NSURL *) url {

    这可能是不同之处-这是可以对应用程序进行的调用,即 运行 它是要处理的URL。如果你用的是另一种方法,就用这个 相反 . 我使用这个,并且看不到“default.png”-也就是说,当我被调用时,不要唤起“干净的重发”。

        2
  •  3
  •   Steve Simitzis    13 年前

    这里有一个可行的解决方法。这让我头疼,因为我试图从Facebook的单一登录过程中无缝返回。我想要的是回到我的应用程序的登录区域,而不是重新启动应用程序的外观,尽管我以各种可能的方式验证了应用程序确实是从快速应用程序切换返回,而不是实际重新启动。

    虽然我找不到任何方法强制应用程序显示上一个状态的屏幕截图,但我发现应用程序将显示默认值。- 方案 .png(例如,default-fb12345.png或default appname.png)在使用URL调用时。因此,如果你的应用后切换屏幕截图是相当可预测的,从iOS模拟器抓取一个屏幕截图并复制到你的应用中。我认为这是一个iOS bug。应用程序切换时,应用程序应始终显示最后一个屏幕截图,而不是默认屏幕截图。- 方案 .png只是因为涉及到一个URL。

    我没有测试的另一种可能性是symlink包的默认值- 方案 .png(和默认值- 方案 @2x.png)到app home目录中的快照文件。对于大多数情况(除非是横向的或iPad),这将是library/caches/snapshots/[bundle identifier]/uiapplicationautomaticsnapshotdefault-pitalt@2x.jpg。如果你的应用的状态是不可预测的,但方向是固定的,这可能是一个很好的选择尝试。

        3
  •  0
  •   topLayoutGuide    14 年前

    确保你在info.plist中设置了“所需的背景模式”键,以满足应用程序所需的功能。如果没有列出,我只使用“app plays audio”保持打开。