분류 전체보기 47

[일단까고보자] 겔럭시 카메라

지난 8월 삼성은 겔럭시 노트2, 겔럭시 노트 10.1 등 새로운 라인업을 소개 했다. 그리고 그와 함께 당당하게 소개된 겔럭시 카메라! 겔럭시s3의 카메라와 검색이 겹쳐서 찾기도 번거로운 이름이다. 출시 전에 이런걸 개발하고 있다는 소린 들었는데 어느새 만들어서 발표까지 해버렸다. 일단 까기 전에 일단 스펙을 정리 해보자 1600만 화소 CMOS이미지 센서, 광각 23mm, 광학 21배 줄 렌즈, 4.3 인치 디스 플레이 똑딱이 치고는 잘빠진 스펙임이 분명하다. 일단 자동 카메라를 사용하려는 사용자들에게는 인기가 있을만한 스펙이다. 몇년전의 일이라면 말이다. 그럼 본격적으로 까보겟다 1. 어정쩡한 포지션 최근에는 스마트폰이 급격히 보급이 되면서 그에 따라 똑딱이의 수요는 급격히 줄어 들었다. 예전의 똑..

[iOS 개발] iCloud keyValue Data Storage 사용

유니버셜 앱을 개발하여 배포할때 각 앱의 설정을 연동할때 유용하게 사용할 수 있는 iCloud keyValue Data Storage를 소개 해보려고 한다. 앱 내에서 iCloud 연동을 위한 설정은 아래 포스팅을 통해 진행하면 된다. http://hagulu.com/144 설정이 다되면 이를 이용하는 것은 매우 간단하다. NSUserDefault를 이용해 본 사용자라면 보자 마자 이해 할 수 있을것이다.NSUbiquitousKeyValueStore 라는 클래스를 통해서 쉽게 사용 할수 있다. NSUbiquitousKeyValueStore* store = [NSUbiquitousKeyValueStore defaultStore]; [store setBool:YES forKey:@"kUsrDefAskDele..

[iOS 개발] 간단한 animation 처리

iOS를 통한 개발에 animation은 꽤나 중요한 부분이다. iOS 특성상 부드러운 animation이 앱을 좀더 고급스럽게 만들어 주는데iOS를 이를 위해 아주 간단하게 animation을 쉽게 구현할수 있도록 해 놓았다.animation 전과 후의 View의 상태만 정해주면 그이외의 작업들은 모두 알아서 해준다.예제 코드를 보면서 설명을 해 보겠다. CGRect rect = targetView.frame; rect.origin.x = 300; targetView.frame = rect; [UIView beginAnimations:nil context:nil]; [UIView setAnimationDelegate:self]; [UIView setAnimationDuration:0.3]; [UIVie..

[iOS 개발] UITableView 기본 delegate, datasource

UITableView 를 사용하다 보면 항상 기본적인 delegate와 datasource의 소스들을 다른 소스에서 긁어서 쓰고 있다.이참에 항상 쓰는 소스만 정리해서 올려 놓으려고 한다.#pragma mark - #pragma mark tableview delegate // 섹션의 갯수 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { // Return the number of sections. return 1; } // 각 섹션당 로우의 갯수 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { // Return the n..

[iOS 개발] iCloud app 연동 설정

앱내의 셋팅 기능에서 많이 사용할 수 있는 간단한 iCould 연동을 소개 해보겠다. 오늘 포스팅할내용은 iCloud 연동을 위한 기본적인 설정 방법에대해서 알아 본다. iCould를 앱에서 이용할수 있는 것은 아래와 그림과 같이 Document Storage와 keyValue Data Strorage 두종류 이다. Document Storage는 직접 파일을 저장하고 이를 로드할수 있도록 사용이 가능하고, 사용자의 iCloud용량이 다 찰때까지 이용할 수 있다. 앱에 따른 제한은 없다. keyValue Data Strorage는 간단하게 NSUserDefault와 비슷한 방식으로 사용이 가능하고, 1M와 1024개의 키로 제한이 있다. 좀더 자세한 정보를 원한다면 애플 공식 페이지 가이드http://d..

iOS6의 화려한 변신은 국내 사용자에겐 그림의 떡(?)

한국시간 9월 20일 iOS6가 정식 출시 되었다.그에 맞추어 전에 썼던 글을 수정해 보았다. 베타 때와 달라진점과 그래도 여전히 부족한 점에 대해 중점적으로 소개해 보겠다. 이번 iOS6에서 중점적인 부분은 구글 맵을 버리고 새롭게 도입한 맵과 좀 더 다양한 기능이 추가된 시리 이다. 먼저 맵, 발표할때만 보더라도 우와~ 우와~ 하면서 보았다. 3D형식의 일반 맵과 FlyOver라는 심시티 스러운 뷰들이 놀라울 다름이었다. 더군다나 tomtom의 네비게이션 기능까지 추가되어 화려하고 완벽한 지도앱으로 탈바꿈 되었다. 베타 때보다는 생각 보다는 많은 것이 지원되었다. 일단 독도! 가 제대로 표현이 되었고, 턴바이턴 네이게이션이 국내에서 동작을하고, 도로명과 상호가 한글화 되었다. 하지만, 아직도 세세한 ..

2013 이전/기타 2017.02.25

[클라우드 서비스] 클라우드 서비스별 장단점

오늘부로 소문만 무성했던 google Drive 서비스가 미국을 시작으로 본격적으로 시작되었다.한국에 정식 서비스는 5월 3일 부터 시작된다고 한다.덕분에 지금 https://drive.google.com/start 를 들어가면 404 Not Found 에러가 보여진다.단, 방법이 있는데google 계정으로 로그인 후에 언어를 영어로 설정해주면 페이지가 보여진다.그랫더니 "Your Google Drive is not ready yet" 라는 메시지가 나와서 조용히 기다리는중....내가 요녀석을 목빠지게 기다리는 이유는... 은근히~ 딱 맘에 드는 클라우드 서비스가 없다..그래서 간단히 클라우드 서비스의 장단점을 다분히 주관적으로 정리해보려고 한다. Drop box세계적으로 가장 많은 사용자를 가지고 있는..

2013 이전/기타 2017.02.25

[iPhone 개발] string 이 URL 형식인지 확인하기

어떤 string이 url인지 판별하는 방법은 여러가지가 있다. 하지만 대부분 http 와 같은 프로토콜을 꼭 포함 시켜야 하거나,"adf.asdf.asdf" 등의 실제로 사용가능한 주소 형식이 아니더라도 주소로 판별되는 경우가 있다.그래서 좀더 정확성 높은 방법을 찾다가정규 표현식을 통한 방법 중에 괜찮은 방법을 찾앗고, 여기에도 문제점이 있어서 수정해서 아래와 같이 사용해 보았다. NSString *ptn = @"(((http|https)://)?([0-9a-z_-]+\\.)+(aero|asia|biz|cat|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|net|org|pro|tel|travel|ac|ad|ae|af| ag|ai|al|am|an|ao|aq..

[iPhone 개발] AudioSessionAddPropertyListener 의 해제

audio session 을 사용하다보면 AudioSessionAddPropertyListener 를 통해서 리스너를 등록해서 사용하게 되는데,이 리스너는 해제해주지 않으면 계속 해당 프로퍼티에 대해서 리스너를 유지하고 있다.리스너를 등록한 객체가 release 되더라도, 리스너는 해제되지 않는다. 명시적으로 해지를 해주어야 하는데 AudioSessionRemovePropertyListenerWithUserData위 함수를 통해서 해제를 해주어야 한다. AudioSessionAddPropertyListener 은 계속 추가되는 방식이기 때문에 콜백 함수대신에 NULL을 넣는 등의 방식으로는 해제가 되지 않고 위에 소개된 메소드를 통해서만 해지가 가능하다. 사용법은 AudioSessionAddPropert..