【发布时间】:2014-07-08 02:21:22
【问题描述】:
我的应用有两个版本,一个是免费的,一个是付费的。我对两个不同的目标使用相同的代码,并且我有定义变量的预处理器宏,这样我就可以知道何时加载或不加载广告。
到目前为止一直运行良好,直到今天 Apple 拒绝了我的付费版本,因为它具有 libGoogleAdMobAds.a 使用的广告标识符
我包含该库,但从未在付费版本上使用它,因为没有显示广告,但如果我不显示广告,他们会因此拒绝该应用程序。
我遇到的问题是,当我将这个库包含在我的免费应用程序的几个文件中时,我不知道如何在没有 admob 库的情况下编译我的付费版本。
那么,如何组织我的文件以包含 admob 文件并将它们包含在免费版本中,但在编译付费版本时将它们排除在二进制文件之外并能够编译我的应用程序?
谢谢
快速更新: 这是我如何获取代码的示例:
#import <UIKit/UIKit.h>
#import "GADBannerView.h"
#import "GADBannerViewDelegate.h"
<other imports here>
@interface testController : UITableViewController <GADBannerViewDelegate>{
GADBannerView *bannerView_;
}
我尝试了以下方法:
#import <UIKit/UIKit.h>
#ifdef FREE_VERSION
#import "GADBannerView.h"
#import "GADBannerViewDelegate.h"
#endif
<other imports here>
@interface testController : UITableViewController <GADBannerViewDelegate>{
GADBannerView *bannerView_;
}
所以,我不能在那里使用 ifdef,因为如果我在导入时使用它,在“接口”行,我会得到一个未定义的“GADBannerViewDelegate”
【问题讨论】:
标签: ios admob identifier