본문 바로가기
반응형

프로그래밍/Xcode-iOS74

ITMS-90809: Deprecated API Usage, new apps that use UIWebView as of April 30, 2020 and app updates that use UIWebView as of December 2020. 조만간 앱을 업데이트 해야할 일이 있어 사전에 바이너리 업로드 테스트를 진행했다. 요즘은 Xcode도 최신을 유지해야 아카이빙해서 바로 업로드할 수 있다고 하길래... 뭐 앱이야 잘 올라갔는데 개발자 메일로 메일이 한 통 왔다. 우리 앱 기능의 반은 웹뷰(UIWebView)에서 돌아가고 있어서 아주 중요한데 이미 이 녀석은 Deprecated된 녀석이라 더이상 사용하면 안되는 녀석이긴 하다. 바꿔야지 바꿔야지 하는데 그게 내맘같지 않다. 사실 내맘 먹는대로 하면 될 것 같긴 한데 또 그건 왠지 억울한(?) 느낌이랄까? 여튼, 조만간 브랜치 하나 따서 작업을 진행하기 해야할 판이다. 새로운 앱에서 UIWebView는 이제 사용할 수 없고 기존 앱 업데이트도 올해(2020년) 12월 까지만 지원된다고 한다... 2020. 4. 28.
iOS UIButton SetBackgroundColor forState: 예전에 네이버 블로그에 올렸던 포스팅인데 오늘 또 사용할 일이 있어서 찾아보니 보인다. 예전 포스팅은 UIButton Category Method로 작업을 했는데 이번에는 UIButton을 상속받아 TabBarItem을 하나 만들고 InitWithFrame할 때 아예 self의 setBackgroundColor와 같은 기능을 하는 setBackgroundImage:forState를 추가해서 만들도록 구현을 했다. @implementation TabBarItem /** * 기본 UI버튼 생성 */ - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { [self setTitleColor:_col.. 2020. 4. 24.
모달창으로 앱스토어 링크 열기(SKStoreProductViewController) 나의 아이폰에 특정 앱이 미설치되어 있을때 해당 앱을 설치하기 위해 앱 스토어로 이동하게 되면 앱의 상태가 백그라운드로 변경되면서 스토어 앱이 포그라운드로 올라가게 된다. 이런 부분을 꺼려 하는 서비스가 있을 수 있기 때문에 현재 앱에서 벗어나지 않고 앱스토어 화면을 뛰울 수 있기를 바랄 경우 StoreKit.framework를 이용하는 SKStoreProductViewController를 모달창으로 뛰울 수 있다. iOS 6.0이상 부터 가능하다. 프로젝트에서 Build Phases 항목의 Link Binary With Libraries에 + 버튼을 눌러 StoreKit.framework를 추가한다. SKStoreProductViewControllerDelegate 프로토토콜을 따른다고 명시하고 del.. 2020. 4. 17.
target별 Podfile 작성하는 방법, def-end target을 두개로 나눴다. 배포용과 개발용 버전으로.. 의존성 관련하여 문제가 발생, 인터넷을 찾아보니 현답이 있길래 링크를 걸어둔다. source 'https://github.com/CocoaPods/Specs.git' platform :ios, '10.1' use_frameworks! def basic pod 'Firebase' pod 'Firebase/Core' pod 'Firebase/Messaging' pod 'AFNetworking', '~> 3.0', :inhibit_warnings => true pod 'naveridlogin-sdk-ios' end target '_dev' do basic end target '_live' do basic end target별로 의존성을 관리해서 사용하.. 2020. 3. 16.
iOS 13 widget dark mode 체크 iOS13에서 다크모드 지원이 된다. iOS SDK내부에 보면 iOS12부터 UserInterfaceStyle을 지원한다고 되어 있는데 지난번 포스팅에서 Info에 User Interface Style을 Light로 넣으면 만사 오케이(?) 라는 말을 따라 적용했는데 이미지나 UILabel, UIView에서 색을 임의로 지정하거나 변경 한 경우에는 다크모드 지원이 제대로 되지 않는 문제가 발생한다. 따라서, 위젯에서 사용하는 UI컴포넌트의 배경색은 default로 잡고 Info에서 Interface Style을 제거한다. 그리고 이미지의 경우는 다음 코드를 이용해서 현재 단말의 다크모드 여부를 체크해서 그에 따라 변경을 하면 된다. if (@available(iOS 13.0, *)) { NSLog(@” .. 2020. 2. 28.
UITableView cell selectedColor(highlighted) Change 디자인 가이드가 나왔을 때 짐짓 고민을 했더랬다. 예전 모 증권사 프로젝트할 때 앱이 가지고 있는 테마에 따라 셀이 선택되었을 때 반전 컬러를 적용하기 위해서 번거로웠던 기억이 있어 조심스러웠는데 이번에 회사앱에 메뉴가 들어가면서 메뉴 선택시 컬러 변경 가이드가 도착한 것이다. 어떻게 할까 고민하다 묵살하고 default로 가져갔더니 역시나 수정 요청이 왔다. 잠시 고민을 하고 구글링을 하니 손쉽게 처리할 수 있는 방법이 있다. 그나마 다행스러운 것은 다크모드에 대응을 하지 않아서 다행이다. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UIView *bgColor.. 2020. 1. 16.
반응형