본문 바로가기

프로그래밍/iOS

(182)
[iOS] 시간 측정하기 해당 코드가 걸리는 시간을 알고 싶을 때 사용하면 된다. NSDate *date = [NSDate date]; // 시작할 부분 float time = 0-[date timeIntervalSinceNow]; // 시간 측정을 끝낼 부분NSString* _timeString = [NSStirng stringWithFormat:@"인식시간 : %f\n", time]; // string으로 보관 // 파일로 저장 NSString *path = [NSTemporaryDirectory() stringByAppendingPathComponent:@"timeCheck.txt"]; // temp 폴더에 timeCheck.txt라고 경로를 string 값으로 가짐 NSFileManager* fileMgr = [NSFil..
[iOS] 이어폰 plug in/out 이벤트 받아오기 이어폰 event 받아오는 법 1. import 선언 #import 2. viewDidLoad함수viewDidLoad 함수에 아래와 같이 추가 [AVAudioSession sharedInstance]; [[NSNotificationCenter defaultCenter] addObserver:selfselector:@selector(audioRouteChangeListenerCallback:) name:AVAudioSessionRouteChangeNotification object:nil]; 3. callback 함수 설정하기- (void)audioRouteChangeListenerCallback:(NSNotification*)notification{ NSDictionary *interuptionDict ..
[ios] 베타(beta)버전 올리기 상위 버전에 민감한 고객사들의 경우 상위 OS beta버전에 올려서 테스트 부탁한다는 요청이 가끔 있다. 할때마다 까먹어서 적어둠 1. 먼저 아이폰 뒷면을 확인해서 자신의 모델을 확인한다. 지금 테스트하려는 단말은 아이폰 6고 뒷면에 모델명은 A15862. 위 모델명을 기반으로 베타 ipsw파일을 받는다. 한글로 쳐도 나오고 영어로 쳐도 나온다.3. 아이폰을 맥에 연결한채로(혹은 윈도우에 연결한 채로) 아이튠즈를 실행한다. 아이튠즈의 핸드폰 모양을 클릭하면 위와 같이 업데이트 화면이 나오는데 Alt 혹은 Option키를 누른채 업데이트 버튼을 클릭하면 ipsw선택창이 나온다. 4. 미리 다운받은 경로로 가서 ipsw파일을 선택해준다. 5. 그럼 알아서 잘 업데이트 한다. 6. 폰에서 베타로 올라갔는지 확..
[ios] NSTimer 일정 시간 후에 함수 실행하기 NSTimer를 이용하여 일정 시간 후에 원하는 동작을 하고 싶을 때 사용한다. [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerStop) userInfo:nil repeats:NO]; 1.0 : 초를 나타낸다. 1초 후 실행self : 자기가 가지고 있는 함수중에서 실행한다.@selector(timerStop) : timerStop이라는 함수를 실행nil : userInfo에 아무값도 전달하지 않음NO : 반복하지 않음 이제 timerStop이란 함수에서 원하는 동작을 하면된다. -(void) timerStop{ // 할 일}
[iOS] framework만들기 은행에 납품한 인식기에서 OZviewer쪽이랑 코덱관련 충돌이 있었다. 우리껀 잘 되는데 oz에서 충돌나는걸 우리보고 고치라해서 고치긴 했는데 좀 씁쓸하넹 여튼 staticLibrary기 때문에 일어난 현상이라 dynamic Library를 찾던 중 framework로 작업하면 괜찮다길래 이걸로 작업 시작 1. framework 프로젝트 XCode6에서 뉴 프로젝트를 선택하면 나오는 창에서 iOS->Framework & Library를 선택하여 Cocoa Touch Framework를 선택 이름은 대충 frameworkTest로 설정 프로젝트 설정 - Build Settings에서 검색으로 installation이라고 쓰면installation Directory가 뜬다.이 설정값을 @loader_path..
[iOS] 현재 기기가 아이패드2인지 확인하는 코드 iPad2도 지원해 달래서 카메라를 확인해보니 ipad2와 4혹은 air사이에 카메라 해상도가 달라져 분기처리가 필요했다. 그 때 iPad2인지 확인하는 코드 1. 확인 코드 BOOL previPad2 = NO; NSString *platform = [self platform]; NSArray *auxArray = [platform componentsSeparatedByString:@","]; if ([[auxArray objectAtIndex:0] rangeOfString:@"iPad"].location != NSNotFound) { int version = [[[auxArray objectAtIndex:0] stringByReplacingOccurrencesOfString:@"iPad" withStr..
[iOS] 디바이스 회전정보 받아오기 일단 회전잠금이 걸려있으면 절대 동작안한다. 1. 회전 감지 등록 제거 함수- (void)registerDeviceOrientationNotification{ [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]; [[NSNotificationCenter defaultCenter] addObserver:selfselector:@selector(orientationChanged:)name:UIDeviceOrientationDidChangeNotification object:nil];} - (void)unregisterDeviceOrientationNotification{ [[UIDevice currentDevice] endGene..
[JavaScript] json 디코딩하기, json파싱 ios네이티브에서 jsonString으로 string값을 넘겼더니%B7 어쩌구 저쩌구하면서 막 이상한 문자가 떴다. 이것은 서버에서 맘대로 인코딩해서 문제인데 이것을 원래대로 돌리기 위해선디코딩 작업을 해줘야한다. 이때 사용하는 함수var decodingString = decodeURIComponent(jsonString); // 넘겨 받은 스트링값을 디코딩한다. 또한 jsonString을 객체로 받아오기var jsonObject = JSON.parse(decodingString); // 디코딩된 jsonString을 json객체로 변환 이제 jsonObject.name등으로 원하는 값을 빼서 쓰면 된다.