TestsTested | ✗ |
LangLanguage | Obj-CObjective C |
License | MIT |
ReleasedLast Release | Mar 2015 |
Maintained by Darius Dark.
Depends on: | |
KZPropertyMapper | >= 0 |
AFNetworking | >= 0 |
FMDB | >= 0 |
SSZipArchive | >= 0 |
SDK позволяет подключить ваше приложение к Russian Beacon Network.
Установка RBN-iOS-SDK происходит через dependency manager - CocoaPods. Просто добавьте в Ваш Podfile строку:
pod 'RBN-iOS-SDK'
1) Импортируйте заголовочный файл RBN.h
#import <RBN-iOS-SDK/RBN.h>
2) Инициализируйте SDK, используя ваш приватный ключ и delegate для RBN-iOS-SDK.
[RBN setupWithAppSecret:@"YOUR_SECRET_KEY" delegate:delegate];
3) В файле info.plist добавьте поле NSLocationAlwaysUsageDescription типа String. В качестве значения текст, который будет показан в приложении при запросе прав на использование геолокации.
4) Если вы планируете отправлять пользователям уведомления через Russian Beacon Network, необходимо в AppDelegate добавить два метода:
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
[RBN handleLocalNotification:notification];
}
- (void)application:(UIApplication *)application handleActionWithIdentifier:(NSString *)identifier forLocalNotification:(UILocalNotification *)notification completionHandler:(void(^)())completionHandler {
[RBN handleLocalNotification:notification];
completionHandler();
}
Это необходимо, чтобы SDK обработал переход пользователя с уведомления и вызвал метод, который описан в следующем пункте.
5) Затем добавим в наш RBNDelegate метод, который будет сообщать о том, что нужно показать объявление:
-(void)presentAdvertisement:(RBNAd*)ad {
//Ваш код. Обработайте пришедший объект RBNAd, содержащий информацию о рекламном объявлении, здесь.
}
Этот метод будет вызван, если необходимо показать на экране страницу с акцией, информация о которой содержится в объекте ad:
-(void)presentAdvertisement:(RBNAd*)ad;
Метод вызывается, если использование служб геолокации ограниченно на данном устройстве (iOS Restrictions):
-(void)rbnRequestsDisableRestrictionForLocationServices;
Метод вызывается, если сервисы геолокации отключены для всего устройства и требуется попросить пользователя включить их:
-(void)rbnRequestsEnableLocationServices;
Метод вызывается, если требуемый тип геолокации запрещен пользователем для данного приложения. Нужно попросить его включить AlwaysAuthorization:
-(void)rbnRequestsAlwaysAuthorizationLocationServices;
Метод вызывается, есть BLE недоступен на данном устройстве:
-(void)rbnReportsThatBLEIsNotSupportedForThisDevice;
Метод вызывается, если по каким-то причинам пользователь отключил блютуз:
-(void)rbnRequestsEnableBluetooth;
Следующий метод вызывается, если iBeacon-модуль нашего SDK успешно запущен и функционирует:
-(void)rbnReportsThatBeaconsModuleRunning;
Если вы не желаете описывать методы получения статуса сервиса iBeacon, но хотите уведомлять пользователя о возможных проблемах с ним с помощью стандартный ActionSheet-уведомлений, вам достаточно просто возвращать YES из следующего метода:
-(BOOL)rbnShouldUseDefaultReporting;
Следующий метод вызывается (не чаще чем раз в секунду), если RBN-iOS-SDK обновил геопозицию пользователя.
-(void)rbnDidUpdateLocation:(CLLocation*)location fromLocation:(CLLocation*)oldLocation forLayerID:(NSString*)layerID;
/**
location - текущая координата пользователя
oldLocation - предыдущая коордиана пользователя
layerID - идентификатор этажа, на котором находится пользователь
*/
Для получения уникального API ключа приложения свяжитесь с нами по адресу [email protected]