본문 바로가기

Programming/iOS

(34)
[ios 강좌] ios 푸시 알림 3부 - APN 테스트 이번 강좌에서는 ios 의 푸시 알림 3부의 APN 테스트를 해보겠습니다, ios 푸시 알림 1부 - 개발자 계정 세팅ios 푸시 알림 2부 - 클라이언트 개발ios 푸시 알림 3부 - APN 테스트 ======================================================================================== 클라이언트는 세팅이 완료됐으므로, 이제 서버에서 푸시를 보내보겠습니다. 1. 아래의 페이지로 APNS-Tool를 다운받습니다,https://itunes.apple.com/kr/app/apns-tool/id963558865?mt=12 ===================================================================..
[ios 강좌] ios 푸시 알림 2부 - 클라이언트 개발 이번 강좌에서는 ios 의 푸시 알림 2부의 클라이언트 개발을 알아보도록 하겠습니다. ios 푸시 알림 1부 - 개발자 계정 세팅ios 푸시 알림 2부 - 클라이언트 개발ios 푸시 알림 3부 - APN 테스트 ======================================================================================== 1. Xcode를 열고 푸시 세팅을 해줍니다. ======================================================================================== 2. AppDelegate.m 파일을 열고, 푸시 코드를 등록합니다. - (BOOL)application:(UIApplication *)..
[ios 강좌] ios 푸시 알림 1부 - 개발자 계정 세팅 이번 강좌에서는 ios 의 푸시 알림을 알아보도록 하겠습니다. 총 3부로 구성해보았습니다. ios 푸시 알림 1부 - 개발자 계정 세팅ios 푸시 알림 2부 - 클라이언트 개발ios 푸시 알림 3부 - APN 테스트 -----------------------------------------------------------------------------------------------------------우선 ios에서 푸시를 하려면, 개발자 계정을 먼저 세팅 해야합니다. 1. 인증서 요청 생성 키체인을 이용해 CertificateSigningRequest라는 인증서를 만들어야 합니다. 2. 파일을 만들고 나서, https://developer.apple.com 접속합니다. 진행중인 프로젝트의 APP I..
[iOS 개발팁] UITextView에 placeholder 추가하기 텍스트 입력할 수 있는 UITextView, UITextField를 사용하다보면, "제목을 입력해주세요", "내용을 입력해주세요" 등의 placeholder 값을 넣을 경우가 많습니다. 기본적으로 UITextField에서는 placeholder 프로퍼티를 제공하지만, UITextView에서는 placeholder 제공하지 않지 않습니다. 내용과 같은 많은 텍스트를 입력해야하는 경우에는 UITextViewDelegate를 사용하여, 텍스트를 입력받기전, 입력받은 후에 "내용을 입력해주세요" 텍스트를 넣어주었다가, 지워주어야합니다. 굉장히 불편한데요, UITextView를 상속받아 클래스를 만들고, placeholder 와 같은 기능을 구현하여 이용하면 편리합니다. 먼저, UITextView를 상속받은 클래..
[iOS 개발팁] 스토리보드 분리하기 iOS를 개발 시 Storyboard는 UI를 만들수 있는 편리한 도구 입니다. 하지만, 프로젝트가 커가면서, Storyboard에 UI를 계속 추가하다보면, 너무 많은 UI 때문에 Storyboard 로드가 느려집니다. 이를 방지하기 위해, Storyboard를 추가로 만들고 사용하는 팁을 알려드립니다. 우선 아래는 플랫폼사업팀에서 진행하는 아이프렌즈펫의 Main.Storyboard의 UI 들입니다. 현재 20개 이상의 화면이 Main.Storyboard에서 사용중이여서, 로드가 오래걸려서 짜증이 납니다. 플랫폼사업팀에서 진행중인 아이프렌즈펫 앱의 스토리보드 이번 아이프렌즈펫 1.9.0 버전, 스프린트에서는 "소모임" 이라는 기능을 추가하기 위해 기존 Main.Stroyboard 에 아래의 ViewCo..
[iOS 강좌] 오픈API 이용한 날씨 APP 만들기 - 5. 도시 정보 변경 제공하는 날씨 API에서 도시 정보를 획득하려면, 별도로 citi 정보를 받기 위해 API를 호출해야합니다. 아래의 json파일을 아마존 s3 저장소에 저장하고, 호출을 하였습니다. https://s3.ap-northeast-2.amazonaws.com/com.ios/city.list.json Citi정보에 대한 모델 객체를 생성하고, #import #import "Coord.h"@interface City : NSObject @property (nonatomic,strong) id id;@property (nonatomic,strong) Coord *coord;@property (nonatomic,strong) NSString *country;@property (nonatomic,strong) NSSt..
[iOS 강좌] 오픈API 이용한 날씨 APP 만들기 - 6. 모델 객체 날씨 API 호출된 모델 객체를 생성합니다. { "dt": 1532314800, "main": { "temp": 308.77, "temp_min": 305.287, "temp_max": 308.77, "pressure": 1002.18, "sea_level": 1023.05, "grnd_level": 1002.18, "humidity": 67, "temp_kf": 3.48 }, "weather": [ { "id": 801, "main": "Clouds", "description": "few clouds", "icon": "02d" } ], "clouds": { "all": 20 }, "wind": { "speed": 1.47, "deg": 229.003 }, "sys": { "pod": "d" }, "d..
[iOS 강좌] 오픈API 이용한 날씨 APP 만들기 - 7. CoreLocation 내위치를 기반으로 날씨 정보를 가져올수 있습니다. // 코어 로케이션#import // 변수 @property (nonatomic, strong) CLLocationManager *locationManager;// Location Manager 생성self.locationManager = [[CLLocationManager alloc] init]; // Location Receiver 콜백에 대한 delegate 설정self.locationManager.delegate = self;// 델리게이트// longitude, latitude 값 가져옴-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)location..