조회 수 924 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

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

?

  1. [android] 초간단 얼럿 (AlertDialog)

    Date2016.10.21 CategoryDevelop Byhooni Views940
    Read More
  2. [ios] 문자열로 함수 실행하기 (eval 함수처럼)

    Date2015.02.10 CategoryDevelop Byhooni Views932
    Read More
  3. [mysql] MySQL 백업 및 복구

    Date2019.11.22 CategoryDatabase Byhooni Views925
    Read More
  4. [ios] Thread Loop 내에서 UI 업데이트 방법

    Date2015.01.03 CategoryDevelop Byhooni Views925
    Read More
  5. [ios] URL 랜딩 속도(OpenURL 10초 정지되는) 이슈

    Date2015.02.09 CategoryDevelop Byhooni Views924
    Read More
  6. [linux] CentOS Apache 웹서버에 HTTPS 적용

    Date2015.10.23 CategoryDevelop Byhooni Views923
    Read More
  7. [ios] GMT Date와 Local Date 변환하기

    Date2015.04.07 CategoryDevelop Byhooni Views918
    Read More
  8. [js] e.stopPropagation() VS e.preventDefault ()

    Date2015.04.14 CategoryDevelop Byhooni Views917
    Read More
  9. [ios] 비동기 블럭 코드 예제

    Date2014.11.21 CategoryDevelop Byhooni Views904
    Read More
  10. [Android Error] The number of method references in a .dex file cannot exceed 64K

    Date2016.11.10 CategoryDevelop Byhooni Views897
    Read More
  11. [c] 파일명 또는 특정 패턴을 적용

    Date2016.08.03 CategoryDevelop Byhooni Views894
    Read More
  12. 캘리포니아 운전면허 족보

    Date2017.06.12 CategoryDevelop Byhooni Views892
    Read More
  13. 리팩토링 계획안

    Date2017.05.15 CategoryDevelop Byhooni Views876
    Read More
  14. [ios][swift] 초간단 TableView 샘플

    Date2016.06.27 CategoryDevelop Byhooni Views869
    Read More
  15. [ios] 여러 버전의 Xcode 사용하기

    Date2022.05.28 CategoryDevelop Byhooni Views865
    Read More
  16. [apache2] Redirect HTTP to HTTPS

    Date2022.02.03 CategorySystem/OS Byhooni Views856
    Read More
Board Pagination Prev 1 ... 68 69 70 71 72 74 Next
/ 74