반응형

iOS 126

[iOS] 수출 규정 관련 문서가 누락됨 (TestFlight) 해결 방법

TestFlight 업로드 시 진행 상태에 '수출 규정 관련 문서가 누락됨(Missing Compliance)'이라고 아래와 같이 출력되는 경우가 있습니다. 앱에서 암호화를 사용하는지 여부를 묻는것인데, TestFlight(AppStore)에 업로드 시마다 물어봅니다! 해결 방법 관리를 눌러 수출 규정 준수 정보 입력 선택하면 아래와 같이 나옵니다. (아니요를 선택한 경우) ※ 예, 아니요 중 무엇을 선택해야할지 모르겠다면 아래 링크 참고 https://blog.naver.com/PostView.nhn?blogId=mogulist&logNo=221469645552&parentCategoryNo=&categoryNo=39&viewDate=&isShowPopularPosts=false&from=search ..

iOS/기타 2022.01.19

[Objective-c] 메일 보내기 (Mail - MFMailComposeViewController)

iOS에서 Mail 앱 사용해서 메일 보내는 방법 조건 디바이스 Mail 앱에 로그인이 되어있어야 함 사용 방법 MFMailComposeViewController를 사용합니다. https://developer.apple.com/documentation/messageui/mfmailcomposeviewcontroller #import if([MFMailComposeViewController canSendMail]) { // mail 보내기 가능 MFMailComposeViewController *mailCont = [[MFMailComposeViewController alloc] init]; mailCont.mailComposeDelegate = self; [mailCont setSubject:@"메일 제..

[iOS] 호기심에 해보는 Framework Embed 버전 테스트

단순 호기심에 해보는 Dynamic Framework Embed, 버전 테스트 테스트 중첩 Embed 하여 사용하는 프레임워크의 버전이 다른 경우, 어떤 버전을 사용하는지? 구성 A 프레임워크 : 일반 프레임워크 B 프레임워크 : A 프레임워크를 Embed 하는 프레임워크 C 프로젝트 : A 프레임워크와 B 프레임워크를 Embed 하여 사용하는 iOS 응용 프로그램 (앱) 테스트 상황 1 B 프레임워크 : A 프레임워크 버전 1 Embed C 프로젝트 : A 프레임워크 버전 2 Embed + B 프레임워크 Embed Q. C 프로젝트에서 A 프레임워크 사용 시 어떤 버전의 A 프레임워크를 사용할까? A. C 프로젝트에 있는 버전 2 사용 Q. C 프로젝트에서 B 프레임워크를 통해 A 프레임워크 사용 시 ..

[iOS] 상태바 아이콘 색상 변경 방법 (Status Bar Style)

iOS 상태바 아이콘(텍스트) 색상 변경 (Status Bar Style 변경) Info.plist에서 설정해주면 됩니다. 1. UIViewControllerBasedStatusBarAppearance 설정 false로 설정합니다. UIViewControllerBasedStatusBarAppearance 2. UIStatusBarStyle 설정 원하는 색상으로 설정 UIStatusBarStyle UIStatusBarStyleDarkContent// 상태바 검정색 아이콘 설정 // or UIStatusBarStyleLightContent// 상태바 흰색 아이콘 설정 Info.plist를 Property List로 확인하면 아래 항목입니다.

[iOS] Safe Area Top, Bottom 높이 조회 (status bar height)

Safe Area Top과 Bottom 높이 조회하는 방법 Safe Area Top 높이는 Status bar 높이와 동일합니다. Objective-c if (@available(iOS 11.0, *)) { UIWindow *window = UIApplication.sharedApplication.windows.firstObject; CGFloat top = window.safeAreaInsets.top; CGFloat bottom = window.safeAreaInsets.bottom; NSLog(@"top : %f", top); NSLog(@"bottom : %f", bottom); } Swift if #available(iOS 13.0, *) { let window = UIApplication.sh..

[iOS] 인증 토큰 방식 푸시 알림(APNs) 및 키 생성 방법 (p8 파일)

인증 토큰 방식 푸시 알림(APNs) 및 키 생성 방법 iOS에서 푸시 알림을 사용할 수 있는 방법은 2가지가 있습니다. 인증 토큰 사용 방법 인증서 사용 방법 차이점은 아래와 같습니다. - 인증 토큰 방법 인증서 방법 유효기간 없음 1년 환경 개발 및 프로덕션 개발 or 개발 및 프로덕션 (2가지) 사용 앱 모든 앱에서 사용 앱마다 개별 생성 Apple에서 권장하는 방법은 인증 토큰을 사용하는 방법입니다. 인증 토큰 방식은 유효기간이 없으며, 하나의 키만 생성하면 모든 앱에서 사용할 수 있기 때문에 더 간편합니다. 참고사항 키는 생성 후 한 번만 다운로드할 수 있으며, 이후에 다시 다운로드할 수 없습니다. 때문에 키를 다운로드한 후 안전한 곳에 백업해두어야 합니다. 계정 당 APNS 키는 최대 2개만 ..

[Swift] 카카오링크 API 구현하기 (카카오톡 메시지 보내기)

iOS Kakao SDK를 사용해 Swift에서 카카오링크 API를 구현하는 방법입니다. 기능 설명 카카오링크 API는 카카오톡 친구에게 카카오톡 메시지를 보내는 기능입니다. 카카오링크 API를 사용해서 카카오톡 친구나 채팅방에 메시지를 공유하는 방법은 크게 두 가지가 있습니다. 카카오링크 API 카카오톡 메시지 API 두 API 차이점은 간략하게 카카오링크 API는 카카오톡에서 알아서 해주기 때문에 비교적 간단하며, 카카오톡 메시지 API는 친구 목록 가져오기 등 직접 구현해야 하는 불편함들이 있습니다. 이 글은 카카오링크 API를 사용해서 공유하는 방법을 설명합니다. 샘플 프로젝트 모두 구현된 샘플 프로젝트는 아래 깃헙 링크에서 확인해주세요. https://github.com/eunsuu1015/Ka..

[iOS] Auto Layout Constraints 코드로 쉽게 변경하기 (NSLayoutConstraint)

iOS Authlayout UI에서 빠질 수 없는 게 Constraints죠 예를 들어 디바이스마다 사이즈를 다르게 적용해야 할 때, 간단하게 사용 가능합니다. 사용 방법 기본 설정 : Test Label의 Top과 Safe Area Top의 Constraint가 50으로 적용되어있습니다. 1. storyboard 또는 xib에서 변경하고 싶은 Constraint를 마우스 우클릭하여 h 파일로 가져오고 Outlet을 연결해줍니다. 2. Type은 NSLayoutConstraint로 연결됩니다. 3. 원하는 값으로 변경 아래 방법으로 원하는 값으로 설정합니다. _topConstraint.constant = 200; _topConstraint.constant = 50; 결과 topConstraint가 50일..

[Objective-c] char* -> NSString, NSString -> char* 변환 방법

Objective-c에서 char* (const char*)와 NSString 간 변환 방법입니다. Unity와 iOS 간 호출할 때 변환해서 사용했습니다. 아래 방법으로 변경해서 보내지 않는 경우, 인코딩이 깨지는 문제가 있었어요 char* -> NSString const char *c = "test"; NSString *s = [NSString stringWithUTF8String:c]; NSString -> char* NSString *s = @"test"; const char *c = [s UTF8String];

[Objective-c] 카카오 로그인 연동 (카카오톡, Kakao Login)

iOS에서 카카오 로그인 연동하는 방법 샘플 프로젝트 모두 구현된 샘플 프로젝트를 미리 실행해보고 싶다면 아래 깃헙 링크에서 확인해주세요. https://github.com/eunsuu1015/KakaoLoginSample GitHub - eunsuu1015/KakaoLoginSample: iOS KakaoLoginSample iOS KakaoLoginSample. Contribute to eunsuu1015/KakaoLoginSample development by creating an account on GitHub. github.com 시작 전 참고사항 Kakao Legacy 1.23.9 버전을 사용했습니다. 최신 버전은 Swift, RxSwift만 지원됩니다. 사전 준비 사항 카카오디벨로퍼스(Kak..

[Xcode] Build error Permission denied 해결 방법

Xcode Build Error Permission denied 해결 방법 Xcode Build 중 Permission denied 에러 발생 Unity Project를 iOS용으로 export 한 후 Xcode에서 Build 시 오류가 발생하였습니다. 발생 에러 /Users/Library/Developer/Xcode/DerivedData/Unity-iPhone-gffhrwzatismvigsjulsctxjpoos/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphoneos/UnityFramework.build/Script-9D3DC87A221D90AB00B2960B.sh: line 2: /Users/Desktop/workspace/i..

iOS/오류 해결 2021.11.23

[Objective-c] 네이버 로그인 연동 (네아로, Naver Login)

iOS에서 네이버 로그인 연동하는 방법 요구사항 및 자세한 사항은 Naver developers 및 Naver github에 자세히 나와있습니다. 하단 참고 URL에서 확인해주세요. 샘플 프로젝트 모두 구현된 샘플 프로젝트를 미리 실행해보고 싶다면 아래 링크에서 확인해주세요. https://github.com/eunsuu1015/NaverLoginSample GitHub - eunsuu1015/NaverLoginSample: iOS Naver Login Sample iOS Naver Login Sample. Contribute to eunsuu1015/NaverLoginSample development by creating an account on GitHub. github.com 사전 준비 사항 아래 ..

[iOS] [NSBundle ko_appKey:] unrecognized selector sent to class 해결 방법

iOS 카카오 SDK 연동 시 [NSBundle ko_appKey:] unrecognized selector sent to class 에러 해결 방법 발생 에러 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSBundle ko_appKey]: unrecognized selector sent to class 해결 방법 Build Setting 수정 프로젝트 > TARGETS > 앱 > Build Settings > Other Linker Flags에 -all_load 추가 ※ 아래 이미지에서 카카오 SDK를 Framework에서 사용하기 때문에 Framework에서 설정한 것이며, 일반 앱은 TARGET..

[Swift / Obejctive-c] 클립보드 복사/붙여넣기 (UIPasteboard)

iOS에서 클립보드에 값을 복사하는 방법과, 클립보드에 있는 값을 가져오는 방법 Swift // 클립보드에 값 복사하기 UIPasteboard.general.string = "some string" // 클립보드 값 가져오기 if let someString = UIPasteboard.general.string { // someString } Objective-c // 클립보드에 값 복사하기 [[UIPasteboard generalPasteboard] setString:@"some string"]; // 클립보드에 값 가져하기 NSString *someString = [[UIPasteboard generalPasteboard] string];

[iOS] Xcode adding space in App Name (앱 명 띄어쓰기 안 될 때)

Adding space in app name Xcode에서 앱 명 띄어쓰기가 안될 때 해결 방법 일반적으로 앱 명을 변경할 때는 아래 방법으로 변경합니다. TARGETS - General - Identity에서 Display Name 변경 Info.plist 에서 Bundle name 변경 그런데 간혹 띄어쓰기가 적용 안 되는 경우가 있죠. 또는 앱 명이 길어서 OS에서 자동으로 띄어쓰기를 없애버리는 경우도 있습니다. 이럴 때는 아래와 같은 방법으로 진행하면 됩니다. 해결방법 1. Info.plist를 Source Code로 열기 Info.plist 우클릭 > Open As > Source Code 선택 2. CFBundleName에 띄어쓰기 대신 를 입력 3. 앱 실행하여 확인하기 수정 전: 띄어쓰기 ..

[Swift / Objective-c] UITableView 셀 구분선 없애는 방법 (separatorStyle)

UITableView 셀 구분선 없애는 방법 Separator: UITableView 셀과 셀 사이에 있는 구분선 viewDidLoad에서 설정해주면 됩니다. Swift tableView.separatorStyle = .none Objective-c tableView.separatorStyle = UITableViewCellSeparatorStyleNone; 참고사항 Inspector 창에서도 가능합니다. Attribution Inspector > Separator 스타일 및 색상 설정 가능

[iOS] CSR(인증서 서명 요청) 생성 방법 (Certificate Signing Request)

Mac에서 CSR(인증서 서명 요청) 생성 방법 CSR이란? Certificate Signing Request : 인증서 서명 요청 인증서 발급을 위한 정보를 담고 있는 파일 CSR 생성 방법 1. 키체인 접근 실행 2. 상단 키체인 접근 > 인증서 지원 > 인증 기관에서 인증서 요청 선택 3. 인증서 정보 입력 해당 csr을 넣어 만든 인증서를 키체인에 등록하면 일반 이름에 입력한 값이 개인키 부분에 표시됩니다. (abc) CA 이메일 주소는 입력하지 않아도 됩니다. 요청 항목은 디스크에 저장됨을 선택해야 Mac에 csr 파일로 저장됩니다. 4. csr 파일명 입력 5. 완료 참고사항 생성된 csr을 더블클릭하면 생성 시 입력한 정보를 확인할 수 있다. 일반 이름(사용자 이메일 주소) 참고 URL ht..

[iOS] 기업용 앱 신뢰 설정 (신뢰할 수 없는 기업용 개발자)

iOS 기업용 앱 신뢰 설정 방법 기업용 앱(기업에서 배포한 앱) 설치 후, 실행을 위해 신뢰를 설정해야 앱 사용이 가능하다. 문제 신뢰하지 않은 경우는 아래 알림이 뜨면서 앱 실행이 불가능하다. 신뢰 설정 방법 신뢰 설정은 앱에서 가능하다. 1. 설정 앱에서 일반 선택 2. 아래로 내려 기기 관리 선택 3. 신뢰할 기업 선택 4. '기업'을(를) 신뢰함 선택 신뢰하기 전에는 '개발자를 신뢰하기 전에는 실행되지 않습니다.'라고 표시된다. 5. 신뢰 선택 6. 신뢰 완료 신뢰가 완료되면 '앱을 신뢰합니다.'라고 표시된다.

[Objecitve-c] Category(카테고리) 사용 방법

iOS Category(카테고리) 사용 방법 Category란? 기존에 정의된 클래스를 쉽게 확장할 수 있게 해주는 기능 사용 방법 1. 카테고리로 확장할 클래스 생성 1-1. Xcode File > New > File > Cocoa Touch Class 선택 1-2. 네이밍 규칙 Class 파일명은 확장할 클래스 이름+카테고리명으로 지정해야 한다. 아래 사진에서는 NSString+Test 로 지정했다. 1-3. 생성된 파일 // NSString+Test.h #import @interface NSString_Test : NSObject @end // NSString+Test.m #import "NSString+Test.h" @implementation NSString_Test @end 1-4. 생성된 ..

반응형