0

私はiPhoneアラームアプリの開発の最終段階にいます

アラームは通知センターを通じて機能します。

短時間の遅延 (たとえば 2 時間) ではうまく機能します

朝は動かない(長時間遅れ8時間)

また、インターネットにアクセスできない電話でも問題なく動作するようですか?

アラーム機能を妨害する何らかの自動時間更新/同期が存在する可能性はありますか?

8時間以上の遅延は通知を無力化していますか?

アプリはフォアグラウンドにある必要がありますか?

そのため、アラームは短時間の遅延に対しては機能しますが、朝には機能しません (意図されている場合)。

まもなく Apple にアップデートを提出する予定です。

よろしくお願いします。

ヘンリー (オーストラリア)

-(void)addLocalNotification:(myAlarmData *)ma WeekDay:(int)mweekday
{
    UILocalNotification *noti = [[UILocalNotification alloc] init];

    NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];

    NSDate *now = [NSDate date];

    NSDateComponents *dcom = [gregorian components:(NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit |NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit | NSWeekdayCalendarUnit) fromDate:now];

    [dcom setWeekday:mweekday];
    [dcom setHour:ma.mHour];
    [dcom setMinute:ma.mMinute];
    [dcom setSecond:0];


    NSDate *fireDate = [gregorian dateFromComponents:dcom];

    noti.fireDate = fireDate;
    noti.timeZone = [NSTimeZone localTimeZone];
    noti.alertBody = [NSString stringWithFormat:@"Wake up %@!", [GlobalData gSettings].name];
    noti.soundName = [NSString stringWithFormat:@"%@.caf", ma.soundName];
    noti.alertAction = @"OK";

    noti.repeatInterval = NSWeekCalendarUnit;

    noti.userInfo = [[[NSDictionary alloc] initWithObjectsAndKeys:
                      ma.mid, @"mid",
                      [NSString stringWithFormat:@"%d", mweekday], @"day",
                      ma.soundName, @"sound",
                     [NSString stringWithFormat:@"%d", ma.snooze], @"snooze",
                      ma.title, @"title",
                      @"Close", @"action",
                      @"real", @"more",
                      nil] autorelease];

    [[UIApplication sharedApplication] scheduleLocalNotification:noti];

    [noti release];
    [gregorian release];
}
4

0 に答える 0