应用内购买后如何删除chartboost横幅?
3 回答
使用这样的东西
购买应用程序时,在您的 NSUserDefaults 中设置布尔键 isPurchase YES
if(![userDefaults boolForKey:@"isPurchase"])
{
NSLog(@"Enter add start ");
[[Chartboost sharedChartboost] showInterstitial];
}
[userDefaults synchronize];
}
最简单的方法是将信息保存在上面帖子中提到的用户默认值中,但这并不安全,因为许多软件可以轻松访问用户默认值,并且可以编辑/添加您的密钥,除非它是一种大密钥和秘密或者没有人将其作为黑客发布。
最好的办法是将此信息存储在服务器(如果有的话)或将此信息存储在 Key Chain 中,因为它是安全的。
如何使用钥匙串轻松做到这一点,请遵循以下帖子
Chartboost 提供委托方法-(BOOL) shouldDisplayInterstitial:(NSString*)location
在此方法中返回“false”将阻止广告展示;如果您确实想要展示广告,请记住返回“true”。只需与本地存储的布尔值进行比较,即可跟踪他们是否购买了 IAP。
之所以推荐这种方法而不是硬编码,是因为您可能希望保留一些特定于交叉促销活动的位置,以推广您自己的应用程序,这些应用程序将来仍能展示广告。
这样,当您发布新应用时,您可以进行有限的促销活动,并确保购买了无广告 IAP 的最忠实粉丝仍然可以看到您的新游戏的交叉促销广告——这是一种汇集最高质量的好方法用户到您的新应用!如果您制作正确的广告艺术,他们甚至不会知道这是广告,您可以制作它,以便他们只看到一次。
然后,您可以添加showInterstitial:@"cross-promo"
任何您可能想要显示此内容的位置,并仅针对该位置禁用所有发布活动。然后,将来当您有一个新应用程序时,在该位置添加一个新的交叉促销活动来宣传您的新应用程序,每个人都会看到它 - 甚至是购买 IAP 的人!
这个实现的一个例子:
-(BOOL) shouldDisplayInterstitial:(NSString*) location {
if(_userBoughtNoAdsIAP && location != @"cross_promo"){
return FALSE;
}
return TRUE;
}
并且不要忘记设置[Chartboost sharedChartboost].delegate = self;
以确保委托方法正常运行!
全面披露:我为 Chartboost 工作