2013-05-08 3 views
0

Я работаю на стороне ИТ в моей компании, и сейчас я работаю над проектом с разработчиком iOS. Проект в основном является приложением, которое будет уведомлять пользователя о предложениях в магазине с предупреждением, когда они войдут в зону геофоруда радиуса 250 м. В настоящее время 160 из этих районов с геотермическим покрытием.Geofencing Alert Analytics - Невозможно?

Моя компания хотела бы иметь некоторые данные относительно того, сколько предупреждений отправляются в каждой geofenced области за день/неделю/месяц (все, что мы можем получить!), Чтобы определить, какие участки пользователи наиболее активны.

Мне сказал разработчик, что это фактически невозможно. Я был бы очень признателен за некоторые рекомендации относительно того, возможно ли это, и где я могу найти больше информации, т. Е. Есть ли какие-либо службы мобильной аналитики, которые это предоставляют?

Я стараюсь изо всех сил в течение последних 4 дней, чтобы найти дополнительную информацию об этом, с ограниченным успехом. Я бы очень признателен за некоторые рекомендации.

ответ

0

Это возможно, но что-то еще невозможно - отслеживание одновременно 160 геолокаций. Это позволит сэкономить время автономной работы, и действительно, максимальное количество геолокаций, которое одно приложение может отслеживать одновременно, составляет около 20. (это ограничение iOS и нет обходного пути или «взлома» вокруг него)

Это действительно, очень хорошо возможно. Я попытаюсь объяснить это на высоком уровне абстракции.

Чтобы уведомить пользователя, ваше приложение уведомляется от iOS о том, что пользователь ввел или вышел из определенной области.

И это ваш шанс отправить запрос, чтобы добавить новую строку в базу данных (где-то в сети, на вашем сервере и т. Д.), Содержащую дату, когда уведомление было запущено, и из какой области географии он был уволен.

И все, довольно тривиально.

Вы должны, однако, подумать о том, как вы должны проектировать свою базу данных и что вы должны хранить внутри нее.

0

Сообщите вашему «Разработчику», чтобы он вложил крошечный кусочек кода в свое маленькое приложение, которое записывает крошечную запись в базу данных каждый раз, когда упомянутые записи приложений также имеют вход или событие выхода, и в какой области его запускают.

Вот код, если он пытается сказать вам его невозможно снова:

- (void)exited:(CLRegion *)region //could also use entered 
{ 
    NSString *id = [NSString stringWithFormat:[region identifier]]; //id of region triggered in app 
    NSString *post = [NSString stringWithFormat:@"id=%@",id]; //append id to data which you post to server so it can record it in your database 
    NSString *hostStr = @"https://www.yourwebsite.com/yourapp/ios_data.php?"; //actual url of your webpage which will write data to database for you 
    hostStr = [hostStr stringByAppendingString:post]; //put two and two together 
    NSData *dataURL = [NSData dataWithContentsOfURL: [ NSURL URLWithString: hostStr ]]; // package them 
    NSString *serverOutput = [[NSString alloc] initWithData:dataURL encoding: NSASCIIStringEncoding]; //read response from server (your own output confirming record) 
} 

Вопросы?