Нужна помощь, как проверить, на основе региона UILocalNotification запущен или нет
Я пытаюсь выяснить, как проверить, если регион основан UILocalNotification
уволен или нет. Я искал и нашел это уведомление об удалении, основанное на местоположении, когда пользователь выходит из региона, но это не помогло мне.
Я настроил регион на основе UILocalNotification
который будет срабатывать, когда пользователь войдет в этот конкретный регион и UILocalNotification
доставит, когда приложение закрыто.
Теперь, когда пользователь открывает приложение, как я могу проверить этот регион на основе UILocalNotification
уволен или нет.
2 ответа
Фрагмент кода:
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
NSString *regionIdentifier = [notification.userInfo objectForKey:@"regionIdentifier”];
[self removeExistingNotificationWithIdentifier: regionIdentifier];
}
-(void)removeExistingNotificationWithIdentifier:(NSString*)regionIdentifier
{
NSArray *scheduledNotifications = [[UIApplication sharedApplication]scheduledLocalNotifications];
for (UILocalNotification *notification in scheduledNotifications)
{
NSDictionary *userInfoDict = notification.userInfo;
if ([[userInfoDict objectForKey:@"regionIdentifier"] isEqualToString:regionIdentifier])
{
[[UIApplication sharedApplication]cancelLocalNotification:notification];
}
}
}
Использование gpx
файл для проверки уведомлений на основе региона.
Пример: создать файл Location.gpx
содержит лат, длинный из мест, которые вы хотите, чтобы уведомления были запущены. Код ниже содержит лат, длинный из двух мест.
<?xml version="1.0"?>
<gpx version="1.1" creator="Xcode">
<wpt lat="28.53191" lon="77.38311">
<name>Google</name>
</wpt>
<wpt lat="28.50848" lon="77.40825">
<name>Apple</name>
</wpt>
</gpx>
Во время отладки выберите Location.gpx
файл, как показано на рисунке ниже: