앱등이에게 살충제를 뿌린다./일기는 일기장에
-
iOS10을 대응하며..앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 10. 7. 23:32
B앱만 하다가 P앱을 혼자 맡게 되었다.iOS9에서는 잘 되는게 iOS10에서는 안된다. 한 두개가 아니다.팀쿡 머리털 뽑아버리고 싶네.작작 바꾸라고.. 오늘의 개고생1. [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; [[UIApplication sharedApplication] registerForRemoteNotifications]; 을 요청했으나 didRegisterForRemoteNotificationsWithDeviceToken과 didFailToRegisterForRemoteNotificationsWithError둘 중 그 어느것도 호출되지 않음. iOS9에선 되는데 10에선 안되.구글에 검색어를 쳐..
-
iOS10에서 ATS에 바뀐점! SSL/TLS관련앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 9. 30. 11:04
iOS9발표와 함께 NSAppTransportSecurity라는 키가 생겼습니다. iOS8까지 http 통신을 사용하던 커넥션이 iOS9에서는 먹통이 되었는데요, 바로 이 키 값에 대한 sub키들을 설정하면서 수정할 수 있었습니다.http://rhammer.tistory.com/67 에서도 꼼수를 소개했었구요. iOS10에서는 그럼 변동사항이 없느냐? 있습니다.일부만 소개합니다.. 여기에 적은 변동사항 외에도 엄청 많습니다.WKWebView 관련된 이슈가 좀 대표적일 것 같네요. 그냥 이해안되도 한번 읽어보시면 도움이 될 것 같네요. 저도 이해안되요... iOS10에서는 NSAppTransportSecurity키에 아래의 서브키가 추가됩니다.NSAllowsArbitraryLoadsInMediaNSAllo..
-
iOS10에서의 ATS.. 너무 힘들지만 TLS version을 건들여 보자..앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 9. 29. 21:59
webView:didFailLoadWithError:](410) error: Domain=NSURLErrorDomain Code=-1200 "SSL 오류가 발생했기 때문에 서버에 안전하게 연결할 수 없습니다." UserInfo={_kCFStreamErrorCodeKey=-9824, NSLocalizedRecoverySuggestion=서버에 연결하겠습니까?, NSUnderlyingError=0x610000249690 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "SSL 오류가 발생했기 때문에 서버에 안전하게 연결할 수 없습니다." UserInfo={NSErrorFailingURLStringKey=https://subsubdomain.subdomain.domain..
-
UIViewController의 toolbarItems가 셋팅이 안된다.앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 8. 13. 01:13
사진출처 :http://blog.naver.com/dasol1414/220780832695 이번 프로젝트에서 툴바를 도입했다.UINavigationController에는 toolbar라는 프로퍼티가 있다. 당연히 UIToolbar타입이고.. 이 toolbar는 기본적으로 hidden되어 있는데, 여러분이 만들고 있는 앱의 아무 viewController에서 viewDidLoad에 [Swift] self.navigationController.toolbar.hidden = false [Objective-c] [self.navigationController setToolbarHidden:NO]; 을 쳐본다면 갑자기 생각지도 못했던 toolbar가 나타남을 볼 수 있다.이 Toolbar를 커스텀으로 생성하기 위..
-
UIBarButtonItem을 만들어보자앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 8. 6. 20:19
UIBarButtonItem은 UIToolbar, UINavigationBar 등의 메뉴에 사용된다. 사용은 아래와 같다. (결과참조:http://rhammer.tistory.com/173) 여기에 포스팅할 내용은 이 UIBarButtonItem을 만드는 방법에 관한 것이다. 1. 시스템에서 제공하는 item 위 예제를 참조하세요! 2. 이미지만 갖고 만드는 item 3. 타이틀만 갖고 만드는 item 4. 커스텀 UIView를 갖고 만드는 item 사실 이 4번이 핵심이다. 1,2,3 번은 쉬운데 4번은 생각보다 까다롭다. 4번은 아래의 메소드를 사용해야 한다.DeclarationSWIFT convenience init(customView customView: UIView)OBJECTIVE-C - (i..
-
view를 위해 viewController를 만든다?앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 7. 21. 19:40
이런 경우가 있다.마치 UIViewController의 화면마냥 잘 구성된 view가 필요한경우가 있다. (예를들어 modal로 띄우면서 navigationBar는 건드리지 않기 위한 레이어 형태를 표현하기 위해서??)예시가 허접하지만.. 정말 있다..고 믿는다. 그럴 때 func makeFakeView() {let vc = FakeViewController()self.view.addSubview(vc.view)}이런 메소드가 있다고 치자.정상적으로 작동을 할까? 하지 않는다. 왜냐하면vc는 ARC에 의해서 이미 메모리에서 제거되었기 때문에 vc.view는 빈 화면만 보여주게 될 것이다.따라서 view를 사용할 viewController에서 property를 하나 두고 FakeViewController객..
-
[아몰랑] 컴파일타임 메소드와 런타임 메소드앱등이에게 살충제를 뿌린다./일기는 일기장에 2016. 7. 19. 17:12
교훈은 없는 징징글1 꽤나 dependent한 소스들을 수정하고있는데,,메소드들을 수정하면서 굉장히 혼란스러운 점이 생겨서 남겨둔다. 많은 메소드들이 빌드타임에서 제 역할을 해줄 수 있지만 그렇지 않은 메소드들이 있다.대부분의 경우 네트워크와 관련되어, API의 결과가 있어야만 제 기능을 해주는... 예를 들어 func setTitle() {nextViewController.title = self.title}라는 메소드가 있다고 가정할 때, setTitle()메소드는 아무때나 사용할 수 없다.self.title이 언제 결정되는가에 따라, setTitle()메소드의 역할이 발휘될 수 있기 때문이다. 그래서 이러한 메소드들을 다른 클래스의 init메소드에서 사용해도 되는지에 대한 고민등..아 힘들어,, 유지..