Views 847 Votes 0 Comment 0
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

OpenUrl freezes app for over 10 seconds


[[UIApplication sharedApplication] openURL:urlString] 메소드 사용시 10초 이상 프리징 되는 현상이 발생함.

딜레이도 아니고 프리징.. 10초 정도 아무것도 안됨..


아래 세 가지 방법으로 해결..

어쨌든 해결되는 원리는 같겠지만 ㅋㅋ


#1. 메인 쓰레드 호출해서 실행

dispatch_async(dispatch_get_main_queue(), ^{
    [[UIApplication sharedApplication] openURL:urlString];
});


#2. performSelector 메소드 실행

- (void)applicationDidBecomeActive:(UIApplication *)application
{
  ...

  //hangs for 10 seconds
  //[[UIApplication sharedApplication] openURL:[NSURL URLWithString: url]];

  //Fix: use threads!
  [self performSelector:@selector(redirectToURL:)
      withObject:url afterDelay:0.0];

  ...
}

- (void)redirectToURL:(NSString *)url
{
  [[UIApplication sharedApplication] openURL:[NSURL URLWithString: url]];
}


#3. NSThread 이용

- (void)applicationDidBecomeActive:(UIApplication *)application
{
  ...

  //hangs for 10 seconds
  //[[UIApplication sharedApplication] openURL:[NSURL URLWithString: url]];

  //Fix: use threads!
  [NSThread detachNewThreadSelector:@selector(openBrowserInBackground:)
      toTarget:self withObject:url];

  ...
}

- (void)openBrowserInBackground:(NSString *)url
{
  [[UIApplication sharedApplication] openURL:[NSURL URLWithString: url]];
}


[출처] http://stackoverflow.com/questions/19356488/openurl-freezes-app-for-over-10-seconds

?

List of Articles
No. Category Subject Author Date Views
729 Develop [c++] p.118 확인학습 5번 hooni 2003.04.23 10734
728 Develop [c++] p.47 연습문제 3번 hooni 2003.04.23 10105
727 Develop [c++] p.58 연습문제 2번 hooni 2003.04.23 16296
726 Develop [c++] RSA Sample 4 CPP hooni 2013.04.23 9181
725 Develop [c++] SetWindowPos함수를 이용한 크기조절 예제 1 file hooni 2013.04.23 11079
724 Develop [c++] String Tokenizer (나중에 c 코드로 변경해서 사용할 것) hooni 2013.04.23 11690
723 Develop [c++] template 사용예 hooni 2003.04.23 7147
722 Develop [c++] Win32 API 기본 출력인 MessageBox() 함수 사용 예제.. file hooni 2013.04.23 12629
721 Develop [c++] Win32API를 이용한 ExitWindowsEx 사용한 예제코드 hooni 2013.04.23 7955
720 Develop [c++] Window API(MFC) 오목 게임 file hooni 2003.04.23 10275
719 Develop [c++] WinSock2.0 채팅 프로그램 ㅋㅋ file hooni 2013.04.23 8521
718 Develop [c++] winsock을 이용한 서버,클라이언트와 ssl서버,클라이언트 file hooni 2013.04.23 7610
717 Develop [c++] 가짜 인증서(하나은행) 프로그램 file hooni 2013.04.23 10752
716 Develop [c++] 기초강좌 #01(입출력,영역지정) hooni 2003.04.23 11404
715 Develop [c++] 기초강좌 #02(레퍼런스,메모리할당) hooni 2003.04.23 11426
714 Develop [c++] 기초강좌 #03(함수의 매개변수 전달) hooni 2003.04.23 12080
Board Pagination Prev 1 ... 6 7 8 9 10 ... 53 Next
/ 53