我正在为我工作的公司面临一些扩展挑战,我希望通过关闭开关实现新功能,这样如果该功能尚未准备好发货,我们可以将其关闭并准备好下一个版本。 我知道Facebook,Twitter,Podio和其他公司可能都有这个。 我能想到的最简单的方法是将代码嵌入到#ifdef - #endif块中,但是当我可以在运行时打开和关闭功能时,我希望有一个内部设置面板,这样更容易测试。 有什么想法可以实现吗?任何建议都非常感谢。感谢
答案 0 :(得分:3)
将配置存储为服务器上的plist。当应用程序打开时,下载plist,将其解压缩并将内容存储到用户默认值中。对于可能已关闭的每个功能,请在启用访问权限之前检查用户默认值以查看是否存在。
为简单起见,请使用registerDefaults
启用所有功能,并仅使用下载功能禁用功能。
答案 1 :(得分:2)
尝试在NSUserDefaults中保存此类设置 - 这样它们可以保持并且易于访问https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Classes/nsuserdefaults_Class/Reference/Reference.html
您可以将每个功能的设置标志保存为NSUserDefaults中的设置 因此,每当用户尝试通过比较标志状态(启用/禁用)来打开该功能时,您可以向用户显示该功能或警报(这等待下一个版本等待...)
希望它有所帮助!