callback URL 데이터를 가져다 쓸 경우 데이터를 뽑아야 하는데 한글이 있을 경우 NSURLComponents가 nil 로 떨어지는 이슈가 존재한다. 예외처리한 코드까지 추가하였다. 문자열에 %가 포함되어 있을 경우 parserURL = [문자열 stringByRemovingPercentEncoding] 처리후 사용하면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 NSString *parserURL = @"https://www.test.co.kr?product=test상품ABC&price=30000"; NSURLComponents *components = [NSURLComponents component..
IDFA를 사용하기 위한 내용을 정리해본다. 1. 프레임워크 추가 2. info.plist 에 해당 권한이 필요한 이유에 대한 설명 추가 Privacy - Tracking Usage Description 3. 해당 권한 요청 및 IDFA를 추출할 곳에 import 추가 4. IDFA획득 및 OS버전 예외처리 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 if (@available(iOS 14, *)) { [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { if (status == ATTrackingManagerAuthoriz..
javascript로 웹뷰와 통신중 json변환 및 확인 코드. 1234567 NSDictionary *test = [NSDictionary dictionaryWithObjectsAndKeys:@"userid",@"id",@"123456",@"pw", nil]; NSDictionary *test2 = [NSDictionary dictionaryWithObjectsAndKeys:test,@"login", nil]; NSError *error; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:test2 options:NSJSONWritingPrettyPrinted error:&error]; NSString *myString = [[NSString al..
Xcode에서 Git을 사용하기 위해 선행작업이 필요하다.SVN에서 그랬듯이 ignore 설정이 그러하다.gitignore를 설정하지 않을경우 사용자 설정 파일 때문에 Merge가 되지 않는 불상사가 있으니ignore 설정한 후 clone을 권하는 바이다. xCode의 다음 경로에서 swift.ignore파일을 참고하여 생성하면 된다. https://github.com/github/gitignore/blob/master/Swift.gitignore 터미널에서 git이 설정된 경로로 이동 vi .gitignore 명령어 실행Swift.gitignore 파일의 내용 복사 붙여넣기.esc 키 누른 후 :wq 입력하게 되면 .gitignore 파일이 생성된다. Mac에서는 Git 툴인 SourceTree를 사용..
서버용 APNS 인증서 생성하기 PHP/JSP 맥 키보드 F4또는 응용프로그램 > 기타 폴더 > 키체인 접근 해당 앱의 인증서, 키 각각 선택 후 보내기! 명령어 입력 시 편의성을 위해 인증서는 cert, 키는 key로 파일명 지정.패스워드 추가는 서버와 규약에 따라 추가하거나 하지 않아도 됨.만들어진 cert.p12, key.p12파일이 위치한 곳에서 터미널 실행.터미널 실행 후 > cd desktop 실행 > 아래 명령어 입력. [터미널 인증서 갱신 명령어]openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12(패스워드 없을경우 엔터)openssl pkcs12 -nocerts -out key.pem -in key.p12(패스워드 없을경우 엔터, 맥 사..
[동영상 재생 또는 사운드 재생 시 스피커 활성화 시키는 코드] 12345678910111213141516 #import NSError *error; AVAudioSession *audioSession = [AVAudioSession sharedInstance]; [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:nil]; if (Active == NO) { [audioSession overrideOutputAudioPort:AVAudioSessionPortOverrideSpeaker error:&error]; }else{ [audioSession overrideOutputAudioPort:AVAudioSessionPortOverri..
앨범 접근 제한상태에서 이를 해지시키고, 권한을 취득하기 위한 예외처리가 필요하다. 다음 처리 방식은 권한이 없을경우 바로 시스템 설정페이지로 이동 시키거나, 사진 선택 매서드를 호출하도록 되어있다. Colored By Color Scripter™12345678910111213 #import - (void)selectPhotos { [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ } completionHandler:^(BOOL success, NSError *error) { if (error) { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettings..
https://github.com/Haneke/Haneke 1. 사용목적 - 주기적으로 비동기 처리되는 이미지를 실행 시마다 load하지 않고, 내부에 저장해서 호출하기 위해. 2. 셋팅. - github에 있는 셈플을 다운받아서 코드 및 소스파일을 프로젝트에 복사 후 진행. - 사용방법1) Format 설정.2) Import "Haneke.h" 3) UIImageView에 상황에 맞게 사용하기만 하면 끝. 3. 실제 적용 코드. 12345678910111213141516171819202122232425262728293031+ (void)initialize{ HNKCacheFormat *format = [[HNKCacheFormat alloc] initWithName:@"thumbnail"]; forma..
배열안에 동일안 값이 있는지 확인. 문재 : 숫자로 된 배열에 특정 값이 있는지 확인하기 위하여 사용.단일일 경우 바로 확인 가능하며, 복수의 값일 경우 for문 사용.객체 자체도 비교할 수 있음으로 활용성이 커보인다.12345678910 NSArray *checkAry = @[@"1",@"2",@"3",@"4",@"5"]; NSArray *valueAry = @[@"11",@"23",@"4",@"8",@"5"]; NSCountedSet *filter = [NSCountedSet setWithArray:checkAry]; for (NSString *number in valueAry) { NSLog(@"result : %lu",(unsigned long)[filter countForObject:number..