测试已测试 | ✓ |
语言语言 | Objective-CObjective C |
许可证 | MIT |
发布最后发布 | 2014年12月 |
由Ayaka Nonaka,Dasmer Singh,Mark Adams维护。
VENPromotionsManager可以方便地在应用中定义、管理和控制基于位置的广告,包括以下功能:
您可以通过使用CocoaPods在您的项目中安装VENPromotionsManager
pod 'VENPromotionsManager', '~> 1.0.0'
首先创建一个(或更多)广告。广告可以是基于区域的(使用信标或地理围栏)或基于位置的,需要周期性地查找位置。
//Location Promotion
VPLLocationPromotion *locationPromotion = [[VPLLocationPromotion alloc] initWithCity:@"Cupertino"
state:@"CA"
country:@"United States"
uniqueIdentifier:userDefaultsKey action:^{
NSLog(@"Promotion Number %ld Fired",(long)(i+1));
}];
//Beacon based Region Promotion
NSUUID *estimoteUUID = [[NSUUID alloc] initWithUUIDString:@"B9407F30-F5F8-466E-AFF9-25556B57FE6D"];
CLBeaconRegion *doorRegion = [[CLBeaconRegion alloc] initWithProximityUUID:estimoteUUID
identifier:@"VenmoEntrancePromotion"];
VPLRegionPromotion *regionPromotion = [[VPLRegionPromotion alloc] initWithRegion:doorRegion
repeatInterval:2
enterAction:^{
//Implement code to launch promotion here
}];
然后初始化广告管理器,使用已创建的广告数组
self.promotionsManager = [[VPLPromotionsManager alloc] initWithPromotions:@[locationPromotion, regionPromotion]
shouldRequestGPSAccess:YES];
self.promotionsManager.refreshInterval = 60 * 60; //Lookup location every 60 minutes
[self.promotionsManager startMonitoringForPromotionLocations];
在此示例中,VPLPromotionsManager实例将每60分钟执行一次位置查找,并触发任何有效的位置广告,并在进入广告区域时触发任何有效的区域广告。区域广告支持后台通知,而位置广告则不支持。
我们非常希望看到您对改善VENPromotionsManager的建议!最好的贡献方式是通过提交pull请求。我们将尽快回复您的补丁。如果您发现错误或有问题,也可以提交新的GitHub问题。
请确保遵循我们的通用编码风格,并为新功能添加测试覆盖率!