- html - 我的下拉菜单的内容关闭得太快
- c# - 使用 Html Agility Pack 从网页中的表中获取值而不使用 "SelectNode'
- html - 内容容器下的 CSS 下拉菜单
- html - 如何停止嵌套列表重叠父列表?
我正在研究将 Newsstand 集成到新的 iOS 应用程序中,并想知道我是否可以以一种仍允许该应用程序在尚未迁移到 iOS 5 的设备上运行的方式实现这一点。
任何人都可以给我一些有关如何构建应用程序来处理此问题的反馈吗?
我知道单个应用程序可以具有不同的目标和源文件集,但我更愿意保持代码库尽可能统一,并动态测试报亭功能。
最佳答案
首先,您必须将您的应用程序弱链接到 NewsstandKit 框架。这可以避免 iOS 版本 < 5 的设备因缺少库而崩溃。
然后在运行时,您需要避免调用 NK 方法并引用 NK 类,这显然在 iOS < 5 中不可用。在这种情况下,您可以使用 NSClassFromString() 或其他允许检测的 obj-c 运行时功能等方法这些功能的存在是动态的。
在这种情况下,我可以做的一个建议是提供一个预编译器指令,允许您在编译级别隔离所有报亭内容。通过这种方式,您可以尝试使用 SDK 4(如果有)进行编译,并查看编译器错误或警告。
例如如果你在 Prefix.pch 中添加这样的定义
#define WILL_USE_NK
然后你可以用这种方式将所有 NK 引用括起来:
#ifdef WILL_USE_NK
... your NK statements go here ...
#endif
稍后,当您使用 SDK4 编译应用程序时,您将保留此定义,这样您将获得对 iOS4 设备有效的真正 SDK4 编译(您可以测试),并且您将确保所有 NK 引用都不会被iOS4应用程序。然后,在分发应用程序之前,您必须 #undef 这个定义并使用 SDK5 进行编译(当然保留一些 iOS 4.x 作为最低目标)。
当然,通过这种方式您并不能避免所有可能的错误,但至少您已经隔离了 NK 引用。
至于应用程序业务逻辑的更好策略,这取决于您:这不是一件容易的任务,因为现在报亭负责很多方面,例如后台下载等。此外,杂志模型现在分为现有模型和 NKIssue 功能,但所有这些都是超出此特定问题的实现细节。
关于ios5 - 集成报亭而不破坏向后兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7931515/
已结束。此问题正在寻求书籍、工具、软件库等的推荐。它不满足Stack Overflow guidelines 。目前不接受答案。 我们不允许提出寻求书籍、工具、软件库等推荐的问题。您可以编辑问题,以便
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在一个应用程序中实现报亭功能,尽管该应用程序收到了推送通知,但它并未以后台模式启动。 如果我点击应用程序启动的通知警报,我可以看到字典中存在“content-available”:1 并且问题已下
我是一名优秀的程序员,十分优秀!