Even though the specs and design of PS4 is not confirmed, a demo playing ‘Killzone : Shadow Fall’ with DualShock 4 is shown on Late Night.
Still we can’t see the actual hardware of PlayStation 4, but it seems it exists.
Even though the specs and design of PS4 is not confirmed, a demo playing ‘Killzone : Shadow Fall’ with DualShock 4 is shown on Late Night.
Still we can’t see the actual hardware of PlayStation 4, but it seems it exists.
The rumored Chromebook Pixel is announced with a pricey $1299 price tag.
Chromebook with a 12.85 Retina-quality Touchscreen?
Why would someone buy the Web-only machine when he could buy the Macbook Air or Macbook Pro at a lesser price?
The Chromebook Pixel is not for you
Google just announced its first premium Chromebook, the Chromebook Pixel. It’s gorgeous. Unfortunately, it’s so expensive that I can’t think of a single person who should get one.
Google released a new Google Glass video about how the interface will work.
I hope the worn appearance to be not that bad.
Also the first video was more romantic.
Research by Strategy Analytics shows that Apple iPhone 5 is the best selling smartphone globally in Q4 and iPhone 4S follows the 2nd. Galaxy S3 dropped to the third place.
It’s kind of weird to see iPhone outperforms Android in the Android dominated world.
However, iPhone 5 was already the best-selling smartphone in the US.
Strategy Analytics: Apple’s iPhone 5 tops world smartphone sales for Q4 2012
Reference : Calendar and Reminders Programming Guide from iOS Developer Library
Apple provides a way to add a Reminder through EventKit from iOS 6.
1. Before start coding, you should add the EventKit Framework to the target first.
2. Check whether iOS is over 6. (Reminder API is available above iOS6)
1 2 3 4 | // Check API (above iOS6) if ([[EKEventStore class] instancesRespondToSelector:@selector(requestAccessToEntityType:completion:)] == NO) { return nil; } |
3. Init EKEventStore and request access.
5 6 7 8 9 10 11 12 13 | EKEventStore *store = [[EKEventStore alloc] init]; [store requestAccessToEntityType:EKEntityTypeReminder completion:^(BOOL granted, NSError *error) { // handle access here if (granted) { // Create Reminder... [1] } [store release]; }]; |
4. If access is granted, Create reminder and add location alarm. (Code should be inside [1])
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | EKReminder *reminder = [EKReminder reminderWithEventStore:store]; reminder.title = @"Geofence Reminder"; reminder.calendar = [store defaultCalendarForNewReminders]; // Use default calendar for new reminders EKAlarm *alarm = [[EKAlarm alloc] init]; EKStructuredLocation *location = [EKStructuredLocation locationWithTitle:@"Location title"]; CLLocation *clLocation = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude]; location.geoLocation = clLocation; [clLocation release]; [alarm setStructuredLocation:location]; alarm.proximity = EKAlarmProximityEnter; // Remind when enter or leave [reminder addAlarm:alarm]; [alarm release]; // Save reminder NSError *error; [store saveReminder:reminder commit:YES error:&error]; if (error != nil) { NSLog(@"reminder error:%@",[error description]); } |
Done!