Можно ли взаимодействовать с приложением iOS 5 Reminders из моего приложения?

Есть ли способ добавить, прочитать или удалить элементы напоминания из нового встроенного приложения напоминаний iOS 5?

Ответ 1

Это все будет возможно с iOS 6!:)

https://developer.apple.com/technologies/ios6/

На момент написания этого ответа было достаточно. Чтобы обновить его, это учебник, который очень полезен для тех, кто разрабатывает приложение, которое взаимодействует с собственным приложением напоминаний: Использование набора событий iOS 6 для создания даты и местоположения На основе напоминаний

Ответ 2

Напоминания не распространяются на общедоступный API. Созданные "геосферы" видны для некоторых процессов (я видел счет забора в журналах консоли), но никоим образом не доступен для другого приложения. Вы можете регистрировать заборы только в своем приложении.

Ответ 3

Я не считаю, что это возможно. Нет публичного API, доступного для разработчиков.

Ответ 4

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

Программно добавить пользовательское событие в Календарь iPhone

В то время как календарь "хорошо" для напоминаний, он использует больше возможностей для использования приложения IOS 5 "Напоминания", после чего SIRI может его использовать!: Р

EDIT: я решил проблему с помощью локальных уведомлений....

UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
    return nil;
localNotif.fireDate = itemDate;
localNotif.timeZone = [NSTimeZone defaultTimeZone];

// Notification details
localNotif.alertBody = @"Here is your alert!";

// Set the action button title
localNotif.alertAction = @"View";

//localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.soundName = @"Bell.aiff";
localNotif.applicationIconBadgeNumber = 1;

// Specify custom data for the notification
NSDictionary *infoDict = [NSDictionary dictionaryWithObject:myCustomMessage.text forKey:@"message"];
localNotif.userInfo = infoDict;

// Schedule the notification
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];

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

Вы можете очистить их при необходимости с помощью

[[UIApplication sharedApplication] cancelAllLocalNotifications];

Плазма

Ответ 5

Я могу помочь вам с помощью триггера при поступлении в предопределенное местоположение. вот код.

1: import CoreLocation.framework

2: в файле viewController.h под кодом

#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
@interface ViewController : UIViewController<CLLocationManagerDelegate>
@end

3: inviewController.m

#import "ViewController.h"
@interface ViewController (){
CLLocationManager *locationManager;
CLRegion *mexicoBoundary;
}

@end

@implementation ViewController

- (void)viewDidLoad
{
   [super viewDidLoad];

locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDistanceFilter:kCLDistanceFilterNone];



CLLocationCoordinate2D regionCords ;
//19.432608,-99.133208 lat, lon for mexico city
regionCords=CLLocationCoordinate2DMake(19.432608,-99.133208);
//5000 below, is in meters-radius 
mexicoBoundary =
[[CLRegion alloc]initCircularRegionWithCenter:regionCords
                                       radius:5000.0
                                   identifier:@"mexico_Day"];

[locationManager startMonitoringForRegion:mexicoBoundary];

}

-(void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
NSLog(@"%@: %@", @"region entered", region.identifier);

}

-(void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
{
NSLog(@"%@: %@", @"region exited", region.identifier);
}



- (void)didReceiveMemoryWarning
{
  [super didReceiveMemoryWarning];
  // Dispose of any resources that can be recreated.
}

@end