Touch ID/Passcode 적용하기
난이도: 하 @available(iOS 8.0, *) DeviceOwnerAuthenticationWithBiometrics @available(iOS 9.0, *) DeviceOwnerAuthentication 앱에 잠금을 하기 위해서 예전에는 직접 구현을 하거나 오픈소스를 가져다 쓰는 등으로 구현을 했었는데 iOS 8.0과 9.0에서 LocalAuthentication...
난이도: 하 @available(iOS 8.0, *) DeviceOwnerAuthenticationWithBiometrics @available(iOS 9.0, *) DeviceOwnerAuthentication 앱에 잠금을 하기 위해서 예전에는 직접 구현을 하거나 오픈소스를 가져다 쓰는 등으로 구현을 했었는데 iOS 8.0과 9.0에서 LocalAuthentication...
iOS 8 Today Extension(Widget) 여백 없애는 방법iOS 8이 나오면서 많은 앱들이 Today Extension(이하 Widget) 지원하기 시작했다. 하지만 왼쪽에 아이콘 만큼 여백이 있는 앱도 있고, 여백 없이 꽉차게 나오는 앱도...
참조 http://lab.smoon.kr/75http://www.raywenderlich.com/42591/supporting-multiple-ios-versions-and-devicesiOS 7용 프레임워크를 사용하고 있는데 하위 OS인 iOS 6도 지원하려고 빌드를 하고 실행을 하니 image가 없다는 메세지와 함께 크래쉬가 된다. 뭔가 코드 상으로는 분기가 되도록 구현을 했는데 무조건...
iOS GameCenter 개발중 유저 로그인이 안될 때는 GameCenter App을 실행해서 sandbox id로 접속이 되었나 확인하자. 이것 때문에 또 오랜시간 삽질.참조 :http://stackoverflow.com/questions/12557593/problems-with-game-centerhttp://stackoverflow.com/questions/4386321/game-center-authentication-error/4420457#4420457
핵심 알고리즘? 로직?을 구현중이다. 뭐 딱히 핵심은 아니지만 그래도 중요한 부분이니. 애니팡이나 비쥬얼드와 같은 게임 초기 보드 생성 알고리즘에서 처음에는 복잡하게 하나하나씩 비교해서 적어도 3개가 연속으로 안되게 생각했었는데, 그냥...
앱에 별점을 주는 프레임워크 Appirater https://github.com/arashpayan/appirater위에서 파일을 다운로드 받고 (또는 cocoPods, git 등등)으로 관련 파일 3개(Appirater.h, Appirater.m, AppiraterDelegate.h)를 프로젝트에 복사한다. 그리고 AppDelegate.m 구현파일을 아래와 같이 수정한다. 그리고 빌드를 다시 하면 자신이 설정한 주기 마다...
* iAd는 UIViewController에만 붙는다. iAd 문서https://developer.apple.com/library/ios/documentation/userexperience/Reference/iAd_ReferenceCollection/_index.htmlGoogle AdMob 문서https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals#ios두 개의 문서를 참조하여 필요한 프레임 워크 및 설정을 하도록 하자. AdMob에서는 Other Linker Flags에서 -ObjC 설정을 안해주면 뭔가 에러를 나니 꼭...
게임이 끝나고 iOS 내장된 트위터를 통해서 점수를 보낼 때, 현재 화면을 캡쳐해서 UIImage로 저장하는 방법이다. - (void)onShareClicked:(id)sender { NSString *scoreString = [NSString stringWithFormat:@"Just scored %ld.", (long)_score]; SLComposeViewController *tvc =...
카테고리(Category)- 어떤 클래스에 기능을 추가하는 방식 - 상속(inheritance)를 사용하지 않고, 어떤 클래스에 메소드만을 추가하는 방식- 상속과 다르게 변수는 추가할 수 없고, 메소드만 추가 가능함. 사용법파일명- 기존클래스+확장이름- ex) NSString+Dollar, NSString+LongText코드 호출-...
어느순간 cocoapods를 사용하다 보면, pod install 이라고 쳤는데 console 창에 빨간 글씨의 화면이 아래처럼 나올때가 있다. 이러면 pod install 로 인해서 workspace가 생기지 않게 된다. 대처법은 간단한데 cocoapods의...
게임이 끝나고 iOS 내장된 트위터를 통해서 점수를 보낼 때, 현재 화면을 캡쳐해서 UIImage로 저장하는 방법이다. - (void)onShareClicked:(id)sender { .... CCRenderTexture* renTxture = [CCRenderTexture renderTextureWithWidth:winsize.width ...
매번 찾아서 쓰던건데 너무 귀찮아서 정리한다. 카메라나 동영상의 간단한 뷰를 띄우기 위해서 UIImagePickerController 를 사용하는데 사진을 찍는 방법 , 동영상을 찍는 방법 및 아이폰 내장 포토 앨범에 저장하는...
MKPointAnnotation 에 정보(i) 버튼을 추가하고 싶었다. 지도 관련 액션을 actionsheet 를 이용해서 하거나 다른 버튼을 이용해서 했었는데 핀에 버튼을 눌러서 보여주고 싶었다. cocoacontrols 에 많은 개발자들이 만든 것이...
cocoapods 를 연동하면서 자주 사용하는 라이브러리에 대한 사용법을 정리해서 github에 올리고 있는데, 그 중에서도 단연 SVProgressHUD 는 네트워크 전송 혹은 앱내에서 어떤 연산작업을 할때 주로 사용되어졌는데, NSTimer 랑 연결해서...
TestFlight에 대해서 알게된 경우는 최근에 티스토리 앱을 개발하는 어떤 개발자가 클리앙에서 테스트 해볼 사람을 모집하면서 였다. TestFlight 의 요점은 개발한 ipa 에 대한 테스트를 수동이 아닌 이메일을 통해서...
일단 이 문제의 전제는 처음에 언어가 en 으로 설정되어 있었다는 가정하에 출발을 한다. 필자가 겪은 상황은 이렇다. en으로 되어 있는 상황에서 한국어, 일본어 등이 추가된다. 그래서 나는 Localized.strings...
별 다른건 아니고 Objective-C 에서 데이터를 관리할때 사용하는 자료구조인 NSMutableArray 를 자주 사용하는데 네트워크 요청이나 위치 서비스 요청을 위한 큐(Queue)를 만들때 최근에 주로 사용해 왔다. 특히 하나의 NSMutableArray 를 감싸서(wrapping)...
개인적으로 타이머를 그렇게 좋아하진 않는다.(다들 개인적으로 좋아하지 않는 프로그래밍의 한 부분이 있을것이라 생각됨.) 사실 어떤 이벤트가 발생했다는 것을 타이머를 통해서 감지하거나 하는 경우가 있는데 그런 부분에서 잘 사용하진...
어떤 사용자 정의 클래스의 객체 자체를 copy 해야하는 경우가 있다. 그럴때 사용하는 것이 NSCopying 프로토콜이다. 객체를 복사할때는 copy 메소드를 사용하면 되는데, 실제로 copy 메소드가 복사를 수행하는 것이 아니라 copywithzone:...
다양한 지도 어플들이 있고 그러한 지도 어플 업체나 플랫폼 업체에서 sdk 를 제공하긴 하지만 사실 약간의 문제들이 있다. 예를 들면, 전세계를 대상으로 앱을 만든다고 하면 우리에게 친숙한 네이버나...
vingle 에 갔을 때, 앱 개발 관련 소개를 들으면서 crashlytics 라는 서비스가 있다고 해서 메모해 두었는데, 실제 업무에 적용해 보았다.(crashlytics 는 트위터에 인수되었다고 한다.) 일단 crashlytics 는 간단히 말해서...