Develop
2015.02.09 16:57
[ios] URL 랜딩 속도(OpenURL 10초 정지되는) 이슈
조회 수 923 댓글 0
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
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
817 | Develop | [ios] Swift 4 Dictionary 사용하기 | hooni | 2018.11.29 | 2122 |
816 | Develop | [ios] Swift 4 Singleton inheritance | hooni | 2018.10.31 | 1690 |
815 | Develop | [ios] APNS, Remote Push 사용자가 수신을 동의했는지 확인하기 | hooni | 2018.10.19 | 1371 |
814 | Develop | [ios] APNS, Remote Push 수신 시점에서 앱의 3가지 실행 상태 | hooni | 2018.10.19 | 1093 |
813 | Develop | [ios] Swift 4 String, Date, DateFormatter 예제 | hooni | 2018.10.18 | 1513 |
812 | Develop | [ios] Requesting Location Permissions in iOS | hooni | 2018.08.18 | 1737 |
811 | Develop | [PHP] Mac OS에서 PHP 7 설치하기 | hooni | 2018.05.11 | 5048 |
810 | Develop | [php] Connect to Firebase Console in Laravel | hooni | 2018.05.09 | 3226 |
809 | Develop | [api] 인스타그램 API Access_Token 발급 방법 (Instagram API) 3 | hooni | 2018.04.05 | 7745 |
808 | Develop | [api] 인스타그램에서 최신 이미지 가져오기 (Using Instagram API) 20 | hooni | 2018.04.05 | 12641 |
807 | Develop | [js] Click button copy to clipboard | hooni | 2018.04.05 | 1301 |
806 | Develop | [php] Laravel 4. twitter bootstrap 적용하기 | hooni | 2018.04.05 | 2702 |