내 앱에 사소한 문제점이 하나 있습니다.블록이 내 애플리케이션을 고정합니다.
내 블록을 사용할 때 응용 프로그램이 오래 동안 (거의 1 분) 멈추고 아무것도 할 수 없으므로 모든 스크롤/단추/등이 작동하지 않습니다.
나는 더 빨리 작동하도록, 내 코드를 최적화하려면, 사용자는 일분
- (IBAction)exporter:(id)sender {
EKEventStore *store = [[EKEventStore alloc] init];
[store requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (!granted) {
UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"Accès aux calendrier" message:@"L'accès au calendrier est nécessaire pour utiliser cette fonctionnalité" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
[alert show];
}
EKEvent *event = [EKEvent eventWithEventStore:store];
Variables *objStatutCompte = [Variables getStatutCompte];
if([objStatutCompte.statutCompte isEqualToString:@"clt"])
{
NSString* titreEvent = [NSString stringWithFormat:@"Intervention avec %@", intervenantRecup];
event.title=titreEvent;
}
else if([objStatutCompte.statutCompte isEqualToString:@"slr"])
{
NSString* titreEvent = [NSString stringWithFormat:@"Intervention chez %@", clientRecup];
event.title=titreEvent;
}
NSString* lieuEvent = [NSString stringWithFormat:@"%@, %@", adresseClientRecup, villeRecup];
event.location=lieuEvent;
NSString* currentDay = [dateRecup substringWithRange:NSMakeRange(0,2)];
NSInteger jourCourant = [currentDay integerValue];
NSString* currentMonth = [dateRecup substringWithRange:NSMakeRange(3,2)];
NSInteger moisCourant = [currentMonth integerValue];
NSString* currentYear = [dateRecup substringWithRange:NSMakeRange(6,4)];
NSInteger anneeCourante = [currentYear integerValue];
NSString* dateDebut = [NSString stringWithFormat:@"%d-%d-%02d %@:00", anneeCourante, moisCourant, jourCourant, heureDebutRecup];
NSString* dateFin = [NSString stringWithFormat:@"%d-%d-%02d %@:00", anneeCourante, moisCourant, jourCourant, heureFinRecup];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
[dateFormatter setTimeZone:nil];
NSDate* dateD = [dateFormatter dateFromString:dateDebut];
NSDate* dateF = [dateFormatter dateFromString:dateFin];
event.startDate=dateD;
event.endDate=dateF;
NSMutableArray *myAlarmsArray = [[NSMutableArray alloc] init];
EKAlarm *alarm1 = [EKAlarm alarmWithRelativeOffset:-3600]; // 1 Hour
[myAlarmsArray addObject:alarm1];
event.alarms=myAlarmsArray;
[event setCalendar:[store defaultCalendarForNewEvents]];
NSError *err = nil;
[store saveEvent:event span:EKSpanThisEvent commit:YES error:&err];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Evénement ajouté"
message:@"L'évenement a bien été ajouté"
delegate:self
cancelButtonTitle:@"Ok"
otherButtonTitles:nil, nil];
[alert show];
}];
}
는이 대기 라인 왜 이렇게 오래 당신이 발견 했습니까? – user623396
@ user623396, 아니요. 디버깅 도구를 사용하는 방법을 모르겠습니다. – Batman