我正在跟随一份教程学习如何使用相同的代码库构建免费和付费版本的应用程序。
它展示了如何为“FREE”设置DEFINE,我已经成功地完成了所有这些工作。但似乎忽略了如何处理此类定义。对于免费应用程序,它需要成为GADBannerViewDelegate、GADInterstitialDelegate的委托,而付费版本则不需要。
因此,我希望设置类似于以下内容:
#if FREE
class GameViewController: UIViewController, GKGameCenterControllerDelegate, GADBannerViewDelegate, GADInterstitialDelegate {
#else
class GameViewController: UIViewController, GKGameCenterControllerDelegate{
#endif
但这是无效的,我阅读了文档后明白了原因。我不理解的是如何处理这个问题。作为一种解决方法,我想到了让付费版本也具有那些GoogleAd代理。但是,苹果拒绝了我的应用程序,因为包含它会让我的应用程序看起来像是提供广告,而实际上并不是,这违反了规定。
因此,目前每当我构建付费和免费应用程序时,我都手动编辑代码以更改声明。这样做虽然有效,但很麻烦。肯定有自动化的方法,对吧?